iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > JAVA >踩坑:maven打包失败的解决方式总结
  • 374
分享到

踩坑:maven打包失败的解决方式总结

mavenspringbootjava 2023-09-08 21:09:53 374人浏览 八月长安
摘要

Maven打包失败原因总结如下: 失败原因1:无法使用spring-boot-maven-plugin插件 使用spring-boot-maven-plugin插件可以创建一个可执行的jar应用程序,

Maven打包失败原因总结如下:

失败原因1:无法使用spring-boot-maven-plugin插件

使用spring-boot-maven-plugin插件可以创建一个可执行的jar应用程序,前提是应用程序的parent为spring-boot-starter-parent。

需要添加parent的包spring-boot-starter-parent

<parent>    <groupId>org.springframework.bootgroupId>    <artifactId>spring-boot-starter-parentartifactId>    <version>2.3.6.RELEASEversion>    <relativePath/>parent>

在多模块依赖时,若parent包不是的spring-boot-starter-parent,而是自己定义的包,则应该在插件中添加如下配置:

<plugin>    <groupId>org.springframework.bootgroupId>    <artifactId>spring-boot-maven-pluginartifactId>    <executions>        <execution>            <Goals>                <goal>repackagegoal>            goals>        execution>    executions>plugin>

失败原因2:包无法被依赖
根据官网的说法,直接生成的包是可执行的jar包,可执行jar包无法被依赖。

通过解压缩jar包,可以看到可执行的jar包有BOOT-INF和META-INF文件夹,可被依赖的jar包无BOOT-INF文件夹,只含有META-INF文件夹。
通过以下配置生成两个jar包,可以被依赖。

<build>    <plugins>        <plugin>            <groupId>org.springframework.bootgroupId>            <artifactId>spring-boot-maven-pluginartifactId>            <configuration>                <classifier>execclassifier>            configuration>        plugin>    plugins>build>

在这里插入图片描述

报错:程序包xxx不存在!
失败原因3:在子模块中执行打包命令,而不是执行的父模块的插件
例如:各模块的依赖结构如下

  • generic-admin //管理员模块
  • generic-common //公共模块
  • generic-security //安全模块
  • generic-pom //父模块

管理员模块依赖安全模块,安全模块依赖公共模块,他们都有父模块。

有的人在子模块中也添加了插件,若在子模块中执行打包命令,只能打包单独的模块,会出现程序包不存在的报错。

<plugin>    <groupId>org.springframework.bootgroupId>    <artifactId>spring-boot-maven-pluginartifactId>plugin>

在这里插入图片描述

正确的做法:应该在父模块执行打包命令!
插件配置如下:

<plugin>    <groupId>org.springframework.bootgroupId>    <artifactId>spring-boot-maven-pluginartifactId>    <configuration>        <classifier>execclassifier>    configuration>    <executions>        <execution>            <goals>                <goal>repackagegoal>            goals>        execution>    executions>plugin>

最后,生成jar包后,执行命令启动

nohup java -jar  xxx.jar &

来源地址:https://blog.csdn.net/qq_40610003/article/details/129328456

--结束END--

本文标题: 踩坑:maven打包失败的解决方式总结

本文链接: https://www.lsjlt.com/news/400675.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作