丝绸之路网站建设报告,博客网站开发框架,德语网站建设,万能搜索引擎网站Maven打包失败原因总结如下#xff1a;
失败原因1#xff1a;无法使用spring-boot-maven-plugin插件
使用spring-boot-maven-plugin插件可以创建一个可执行的JAR应用程序#xff0c;前提是应用程序的parent为spring-boot-starter-parent。
需要添加parent的包spring-boot…Maven打包失败原因总结如下
失败原因1无法使用spring-boot-maven-plugin插件
使用spring-boot-maven-plugin插件可以创建一个可执行的JAR应用程序前提是应用程序的parent为spring-boot-starter-parent。
需要添加parent的包spring-boot-starter-parent
!-- 版本选当时的版本 --
parentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.3.6.RELEASE/versionrelativePath/
/parent在多模块依赖时若parent包不是的spring-boot-starter-parent而是自己定义的包则应该在插件中添加如下配置
plugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdexecutionsexecutiongoalsgoalrepackage/goal/goals/execution/executions
/plugin失败原因2包无法被依赖 根据官网的说法直接生成的包是可执行的jar包可执行jar包无法被依赖。
通过解压缩jar包可以看到可执行的jar包有BOOT-INF和META-INF文件夹可被依赖的jar包无BOOT-INF文件夹只含有META-INF文件夹。 通过以下配置生成两个jar包可以被依赖。
buildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdconfigurationclassifierexec/classifier/configuration/plugin/plugins
/build报错程序包xxx不存在 失败原因3在子模块中执行打包命令而不是执行的父模块的插件 例如各模块的依赖结构如下
generic-admin //管理员模块generic-common //公共模块generic-security //安全模块generic-pom //父模块
管理员模块依赖安全模块安全模块依赖公共模块他们都有父模块。
有的人在子模块中也添加了插件若在子模块中执行打包命令只能打包单独的模块会出现程序包不存在的报错。
!--插件配置--
plugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactId
/plugin正确的做法应该在父模块执行打包命令 插件配置如下
plugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdconfigurationclassifierexec/classifier/configurationexecutionsexecutiongoalsgoalrepackage/goal/goals/execution/executions
/plugin最后生成jar包后执行命令启动
nohup java -jar xxx.jar