SpringBoot , Maven 打可执行jar包

本文详细介绍了如何使用Spring Boot 2.2.0版本配置pom.xml,解决启动时ClassNotFoundException,包括设置<start-class>和重新打包jar的操作,适合开发者快速修复常见问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

这里以spring boot版本2.2.0.RELEASE为例

默认地,springboot包类型是jar

1、不废话,pom.xml相关配置如下

注意:以下内容放在pom节点<project>下,即和<artifactId>节点平级

<properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <start-class>com.lucky.MyLuckApplication</start-class>
</properties> 


<build>
  <plugins>
    <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>

        <!--这里的版本,只是例子参考,建议找合适的-->
        <version>2.1.6.RELEASE</version>

        <configuration>
            <mainClass>${start-class}</mainClass>
        </configuration>

        <executions>
            <execution>
                <goals>
                    <goal>repackage</goal>
                </goals>
            </execution>
        </executions>
    </plugin>
  </plugins>
</build>

2、再通过你的开发环境工具,如eclipse,运行maven插件的install

在你工程target目录下会生成两个文件,一个是jar包文件,另一个是.jar.original文件。

你会发现,在命令行下运行命令:java -jar XXX.jar,就不会报以下错误了:

Exception in thread "main" java.lang.NoClassDefFoundError : org/springframework/boot/SpringApplication

Caused by : java.lang.ClassNotFoundException : org.springframework.boot.SpringApplication

Good Luck !

### 创建Spring Boot Maven项目 为了创建一个新的Spring Boot Maven项目,可以采用多种方式之一:使用IDE(如IntelliJ IDEA或Eclipse)、命令行工具或是Spring Initializr。这里介绍基于Maven和Spring Initializr的方法。 #### 使用Spring Initializr初始化项目结构 访问[spring.io/initializr](https://start.spring.io/)网站,在线配置项目的元数据,比如Group、Artifact ID等信息,并选择所需的依赖项,最后下载解压后的ZIP文件作为本地开发环境的基础[^1]。 #### 修改`pom.xml` 在获取到基础模板之后,需确保`pom.xml`中含了必要的构建设置来支持Spring Boot应用程序被打为独立的JAR文件: ```xml <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> ``` 这段XML片段定义了一个名为`spring-boot-maven-plugin`的插件,它负责处理将整个应用及其所有外部库封装进单个可执行JAR中的过程[^3]。 ### 打可执行JAR文件 完成上述准备工作后,可以通过命令行进入项目根目录下运行如下指令来进行编译与打操作: ```bash mvn clean package ``` 此命令会清理旧的目标输出(`clean`),接着按照POM文件指示进行编译(`compile`)以及测试(`test`)阶段的工作;如果一切顺利,则最终调用`package`目标生成含全部资源在内的单一JAR文件[^2]。 一旦成功完成了这些步骤,将会得到位于`target`子目录下的`.jar`形式的应用程序副本,可以直接利用Java虚拟机加载并启动该实例: ```bash java -jar target/<your-app>.jar ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值