使用Maven为SpringBoot项目打包

本文详细介绍了在使用Maven构建项目时遇到的常见打包问题及解决方法,包括如何处理无法找到主类的错误以成功打包Jar包,以及解决web.xml属性缺失导致的War包打包失败问题。

一、maven通过命令行打jar包

进入项目目录,执行如下命令:

mvn -Dmaven.test.skip -U clean package

发现报如下错误:

[ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin
:2.1.4.RELEASE:repackage (repackage) on project model: Execution repackage of go
al org.springframework.boot:spring-boot-maven-plugin:2.1.4.RELEASE:repackage fai
led: Unable to find main class

解决办法:

新增如下代码,并将代码移到主工程目录下:

继续执行上面的打包命令:

打包成功!

进入生成的jar目录中,运行jar文件:

java -jar web-0.0.1-SNAPSHOT.jar

 二、maven通过命令行打war包

修改代码如下

进入项目目录,执行如下命令:

mvn -Dmaven.test.skip -U clean package

发现报如下错误:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-war-plugin:3.2.2:w
ar (default-war) on project web: Error assembling WAR: webxml attribute is requi
red (or pre-existing WEB-INF/web.xml if executing in update mode) -> [Help 1]
[ERROR]

解决办法:

新增如下代码结构

继续执行上面的打包命令:

打包成功!

进入生成的war目录中,运行war文件:

转载于:https://www.cnblogs.com/chenzheng8975/p/10689918.html

使用Maven打包Spring Boot项目,一般按以下步骤进行: ### 1. 确保项目中包含Spring Boot Maven插件 在`pom.xml`文件中,需要添加Spring Boot Maven插件,该插件可以帮助将项目打包成可执行的JAR或WAR文件。示例配置如下: ```xml <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> ``` ### 2. 清理项目打包之前,建议先清理项目,移除之前生成的文件。在项目根目录下,打开命令行工具,执行以下Maven命令: ```bash mvn clean ``` ### 3. 打包项目 执行以下Maven命令进行打包: ```bash mvn package ``` 此命令会编译项目代码,运行测试用例(如果有),并将项目打包成一个可执行的JAR或WAR文件。打包后的文件通常位于项目的`target`目录下。 ### 4. 跳过测试进行打包 如果不想运行测试用例,可以使用以下命令跳过测试进行打包: ```bash mvn package -DskipTests ``` ### 5. 打包成WAR文件 如果要将项目打包成WAR文件,需要在`pom.xml`中进行相应配置。首先,将项目打包方式设置为`war`: ```xml <packaging>war</packaging> ``` 然后,排除嵌入式Tomcat依赖(如果使用嵌入式Tomcat),避免与外部Servlet容器冲突: ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <!-- 排除嵌入式Tomcat依赖 --> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency> ``` 最后,添加Servlet API依赖: ```xml <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>4.0.1</version> <scope>provided</scope> </dependency> ``` 再次执行`mvn package`命令,即可打包成WAR文件。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值