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</verswww.devze.comion> <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> android <manifest> <!-- 此处填写程序的主入口(main方法) --> <mainClass>com.liuyifen.Start.main</mainClass> </manifest> </archive> </configuration> <executions> <execution> <id>make-asseandroidmbly</id> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions>编程 </plugin> </plugins> </build>
总结
maven打包时,默认不会将第三方依赖包打进来。可以在pom.XML中添加maven-assembly插件实现… 打出的包里 xxxx-with-dependencies.jar 就是包含依赖包的。
以上为个人经验,希望能给大家一python个参考,也希望大家多多支持编程客栈(www.devze.com)。
精彩评论