Maven打包之解决没有依赖jar包问题及分析
问题
最近半年多做得项目都是springboot项目,今晚写了个FTPServer小软件,通过Maven打包之后jar文件只有20KB。
通过命令运行后,提示没有指定运行的Main程序。
出现错误信息:java.lang.NoClassDefFoundError 和 ClassNotFoundException。
原因分析
jar文件只有20KB。
明显不对,打开一看里面缺少依赖的jar包。
解决办法
<build>
<plugins>
<plugin>
<!--<groupId>org.apache.maven.plugins</groupId>-->
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin </artifactId>
<configuration>
<descriptorRefs>
<!-- 此处填写打包后jar包后添加的标识 -->
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<!-- 此处填写程序的主入口(main方法) -->
<mainClass>com.liuyifen.Start.main</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>总结
maven打包时,默认不会将第三方依赖包打进来。可以在pom.xml中添加maven-assembly插件实现… 打出的包里 xxxx-with-dependencies.jar 就是包含依赖包的。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
springboot服务正常启动之后,访问服务url无响应问题及解决
这篇文章主要介绍了springboot服务正常启动之后,访问服务url无响应问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-07-07
如何使用IDEA2022.1 创建Spring Boot项目
这篇文章主要介绍了如何使用IDEA2022.1 创建Spring Boot项目,大家在使用idea开发工具时发现给以往的版本略微的不同,细心的小编在此记录下,需要的朋友可以参考下2022-08-08
详解Spring缓存注解@Cacheable,@CachePut , @CacheEvict使用
这篇文章主要介绍了详解Spring缓存注解@Cacheable,@CachePut , @CacheEvict使用,非常具有实用价值,需要的朋友可以参考下2017-05-05
SpringBoot ApplicationContext接口深入分析
ApplicationContext是Spring应用程序中的中央接口,由于继承了多个组件,使得ApplicationContext拥有了许多Spring的核心功能,如获取bean组件,注册监听事件,加载资源文件等2022-11-11


最新评论