SpringBoot打包无法打入Lib文件夹下自己添加(不在Maven仓库)中的JAR包。无法将JSP界面打入JAR包。因为找不到启动类导致系统无法访问的问题

本文主要是介绍SpringBoot打包无法打入Lib文件夹下自己添加(不在Maven仓库)中的JAR包。无法将JSP界面打入JAR包。因为找不到启动类导致系统无法访问的问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

今天在SpringBoot打JAR包部署的时候,出现以下问题,记录整理如下:

问题一:SpringBoot打包无法打入Lib文件夹下自己添加(不在Maven仓库)中的JAR包。

在SpringBoot工程开发中,需要引入其他jar包,由于没有通过在POM.XML文件中,通过Maven仓库增加,而是在WEB-INF下新增lib文件,将需要的jar包放入改文件夹下,然后通过build将jar包引入工程。但是在Maven打包的时候,发现通过上述方式新增的jar包无法打入SpringBoot工程JAR包。

解决方法:

<!-- 解决SpringBoot工程打包无法将工程中lib文件夹中的jar包(没有添加进Maven仓库) --><dependency>   <groupId>com.alibaba</groupId>  <artifactId>fastjson</artifactId>  <version>1.2.3</version>  <scope>system</scope>  <systemPath>${project.basedir}/src/main/webapp/WEB-INF/lib/fastjson-1.2.3.jar</systemPath>  </dependency><dependency>   <groupId>com.inspur</groupId>  <artifactId>common-utils</artifactId>  <version>0.0.1</version>  <scope>system</scope>  <systemPath>${project.basedir}/src/main/webapp/WEB-INF/lib/common-utils-0.0.1-SNAPSHOT.jar</systemPath>  </dependency>

问题二:无法将JSP界面打入JAR包。

目录结构如下

将SpringBoot工程打成JAR包,发现jsp文件没有打入,导致访问404。解决方法

<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration> <!-- <classifier>execute</classifier>  <skip>true</skip> --><!-- 解决SpringBoot工程Jar包启动,找不到启动类,导致系统无法访问的问题 --><includeSystemScope>true</includeSystemScope><mainClass>com.inspur.cxy.SpringbootdemoApplication</mainClass></configuration> </plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>1.8</source><target>1.8</target><encoding>utf-8</encoding><!-- <compilerArgs><arg>-verbose</arg><arg>-Xlint:unchecked</arg><arg>-Xlint:deprecation</arg><arg>-bootclasspath</arg><arg>${env.JAVA_HOME}/jre/lib/rt.jar</arg><arg>-extdirs</arg> <arg>${project.basedir}/src/main/webapp/WEB-INF/lib</arg></compilerArgs> --></configuration></plugin></plugins><resources><resource><directory>src/main/resources</directory><filtering>true</filtering></resource><resource><!-- 解决SpringBoot打包无法将JSP界面打入的问题 --><directory>src/main/webapp/</directory><!--注意此次必须要放在此目录下才能被访问到 --><targetPath>META-INF/resources</targetPath><includes><include>**/**</include></includes> </resource></resources></build>

问题三:因为找不到启动类导致系统无法访问的问题

将SpringBoot工程打成JAR包,通过java -jar命令运行,后台正常启动,但是访问提示找不到系统界面,通过解压jar包发现引入的jar包和jsp页面都存在,后来发现是由于没有指定主方法入口导致的。

<plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration> <!-- <classifier>execute</classifier>  <skip>true</skip> --><!-- 解决SpringBoot工程Jar包启动,找不到启动类,导致系统无法访问的问题 --><includeSystemScope>true</includeSystemScope><mainClass>com.inspur.cxy.SpringbootdemoApplication</mainClass></configuration> </plugin>

 

这篇关于SpringBoot打包无法打入Lib文件夹下自己添加(不在Maven仓库)中的JAR包。无法将JSP界面打入JAR包。因为找不到启动类导致系统无法访问的问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1134841

相关文章

MybatisGenerator文件生成不出对应文件的问题

《MybatisGenerator文件生成不出对应文件的问题》本文介绍了使用MybatisGenerator生成文件时遇到的问题及解决方法,主要步骤包括检查目标表是否存在、是否能连接到数据库、配置生成... 目录MyBATisGenerator 文件生成不出对应文件先在项目结构里引入“targetProje

C#使用HttpClient进行Post请求出现超时问题的解决及优化

《C#使用HttpClient进行Post请求出现超时问题的解决及优化》最近我的控制台程序发现有时候总是出现请求超时等问题,通常好几分钟最多只有3-4个请求,在使用apipost发现并发10个5分钟也... 目录优化结论单例HttpClient连接池耗尽和并发并发异步最终优化后优化结论我直接上优化结论吧,

SpringBoot使用Apache Tika检测敏感信息

《SpringBoot使用ApacheTika检测敏感信息》ApacheTika是一个功能强大的内容分析工具,它能够从多种文件格式中提取文本、元数据以及其他结构化信息,下面我们来看看如何使用Ap... 目录Tika 主要特性1. 多格式支持2. 自动文件类型检测3. 文本和元数据提取4. 支持 OCR(光学

Java内存泄漏问题的排查、优化与最佳实践

《Java内存泄漏问题的排查、优化与最佳实践》在Java开发中,内存泄漏是一个常见且令人头疼的问题,内存泄漏指的是程序在运行过程中,已经不再使用的对象没有被及时释放,从而导致内存占用不断增加,最终... 目录引言1. 什么是内存泄漏?常见的内存泄漏情况2. 如何排查 Java 中的内存泄漏?2.1 使用 J

JAVA系统中Spring Boot应用程序的配置文件application.yml使用详解

《JAVA系统中SpringBoot应用程序的配置文件application.yml使用详解》:本文主要介绍JAVA系统中SpringBoot应用程序的配置文件application.yml的... 目录文件路径文件内容解释1. Server 配置2. Spring 配置3. Logging 配置4. Ma

Java 字符数组转字符串的常用方法

《Java字符数组转字符串的常用方法》文章总结了在Java中将字符数组转换为字符串的几种常用方法,包括使用String构造函数、String.valueOf()方法、StringBuilder以及A... 目录1. 使用String构造函数1.1 基本转换方法1.2 注意事项2. 使用String.valu

java脚本使用不同版本jdk的说明介绍

《java脚本使用不同版本jdk的说明介绍》本文介绍了在Java中执行JavaScript脚本的几种方式,包括使用ScriptEngine、Nashorn和GraalVM,ScriptEngine适用... 目录Java脚本使用不同版本jdk的说明1.使用ScriptEngine执行javascript2.

mac中资源库在哪? macOS资源库文件夹详解

《mac中资源库在哪?macOS资源库文件夹详解》经常使用Mac电脑的用户会发现,找不到Mac电脑的资源库,我们怎么打开资源库并使用呢?下面我们就来看看macOS资源库文件夹详解... 在 MACOS 系统中,「资源库」文件夹是用来存放操作系统和 App 设置的核心位置。虽然平时我们很少直接跟它打交道,但了

Spring MVC如何设置响应

《SpringMVC如何设置响应》本文介绍了如何在Spring框架中设置响应,并通过不同的注解返回静态页面、HTML片段和JSON数据,此外,还讲解了如何设置响应的状态码和Header... 目录1. 返回静态页面1.1 Spring 默认扫描路径1.2 @RestController2. 返回 html2

关于Maven生命周期相关命令演示

《关于Maven生命周期相关命令演示》Maven的生命周期分为Clean、Default和Site三个主要阶段,每个阶段包含多个关键步骤,如清理、编译、测试、打包等,通过执行相应的Maven命令,可以... 目录1. Maven 生命周期概述1.1 Clean Lifecycle1.2 Default Li