SpringBoot使用Maven插件进行项目打包的方法

作者:削个橘子皮 时间:2022-12-21 21:07:34 

SpringBoot自带Tomcat,所以我们的项目可以单独部署,不需要依赖Window、Linux系统中的服务器,所以打包出来的Jar包是可以直接运行的。Windows中直接cmd命令行模式下,cd切换到jar路径中,使用java 命令运行jart包,Linux环境也是一样的命令,如下图:

SpringBoot使用Maven插件进行项目打包的方法

现在我们开始打包,我介绍两种方式,不管那种方式首先先在项目Pom.xml文件中引入Maven插件。


<build>
 <plugins>
  <!-- 设置jdk版本为1.8 -->
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
     <source>1.8</source>
     <target>1.8</target>
     <compilerArguments>
       <bootclasspath>${java.home}/lib/rt.jar;${java.home}/lib/jce.jar</bootclasspath>
     </compilerArguments>
    </configuration>
  </plugin>
  <plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
     <fork>true</fork>
     <outputDirectory>${project.build.directory}/${project.name}</outputDirectory>
     <addResources>false</addResources>
     <includeSystemScope>true</includeSystemScope>
    </configuration>
  </plugin>

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <executions>
     <execution>
       <id>copy-resources</id>
       <phase>package</phase>
       <goals>
        <goal>copy-resources</goal>
       </goals>
       <configuration>
        <encoding>UTF-8</encoding>
        <outputDirectory>
          ${project.build.directory}/${project.name}
        </outputDirectory>  <!-- 表示把配置文件拷到和jar包同一个路径下 -->
        <resources>
          <resource>
           <directory>src/main/resources/</directory>
          </resource>
        </resources>
       </configuration>
     </execution>
     <execution>
       <id>copy-resources-classes</id>
       <phase>package</phase>
       <goals>
        <goal>copy-resources</goal>
       </goals>
       <configuration>
        <encoding>UTF-8</encoding>
        <outputDirectory>
          ${project.build.directory}/classes
        </outputDirectory>  <!-- 表示把配置文件拷到和jar包同一个路径下 -->
        <resources>
          <resource>
           <directory>src/main/resources/</directory>
          </resource>
        </resources>
       </configuration>
     </execution>
    </executions>
  </plugin>
 </plugins>
</build>

<compilerArguments> <bootclasspath>${java.home}/lib/rt.jar;${java.home}/lib/jce.jar</bootclasspath> </compilerArguments>

如果是在Windows下面开发,${java.home}/lib/rt.jar ; ${java.home,这里中间是;号隔开,Linux中则是:号隔开,这是个很坑的地方我提一下。

第一种是IDEA 带的打包方式,快捷键Ctry+Alt+Shift+S同时按会出现下图页面

SpringBoot使用Maven插件进行项目打包的方法

点击 + 号!!!

SpringBoot使用Maven插件进行项目打包的方法

SpringBoot使用Maven插件进行项目打包的方法

首先这里有几个注意的地方,MainClass选择启动类,JarFiles选择第二个,.MF文件位置请选项目的根目录位置,也就是Src的上一级目录,然后点OK,确定,然后在build。

SpringBoot使用Maven插件进行项目打包的方法

这样就打包成功了,不过一堆jar包在你的项目classic路径下,在部署的时候必须把所有的jar放在同一个文件夹下,这是这种打包方式的缺点。

现在说第二种方式,很简单,我推荐这种方式,而且能生成单独一个Jar包,不像第一种方式生成了一堆Jar。

配置好Pom.xml之后,一定要是Jdk1.8。

在IDEA的右上角,有个Maven Project。

SpringBoot使用Maven插件进行项目打包的方法

SpringBoot使用Maven插件进行项目打包的方法

先点Clean,然后点package然后项目目录多了个target文件夹,里面就生成了你要的jar包了,现在就可以去部署在服务器啦。

来源:https://blog.csdn.net/wangjianguo777/article/details/82218619

标签:SpringBoot,Maven,打包
0
投稿

猜你喜欢

  • IDEA创建Java项目文件并运行教程解析

    2023-01-14 15:50:47
  • C# 使用反射来实现对象的深度复制方法

    2021-10-27 19:50:01
  • java实现文件重命名的方法

    2022-11-06 05:42:25
  • @ConfigurationProperties加载外部配置方式

    2023-11-09 01:14:32
  • Java源码深度分析String与StringBuffer及StringBuilder详解

    2022-04-01 09:55:50
  • Android AS为xutils添加依赖过程图解

    2023-11-16 03:51:05
  • 完美解决Android App启动页有白屏闪过的问题

    2021-11-18 02:12:31
  • java实现支付宝退款功能

    2021-09-25 14:00:00
  • Android实现EventBus登录界面与传值(粘性事件)

    2023-11-08 00:34:52
  • Flutter自定义底部导航栏的方法

    2022-01-10 15:48:33
  • 详解JAVA中priorityqueue的具体使用

    2022-05-17 22:53:50
  • Spring Boot 集成Mybatis实现主从(多数据源)分离方案示例

    2023-08-10 07:43:21
  • C#实现对Json字符串处理实例

    2023-06-21 08:26:24
  • Android 7.0开发获取存储设备信息的方法

    2022-05-24 01:04:57
  • Android仿qq分组管理的第三方库

    2023-08-27 05:31:21
  • C#中WebClient实现文件下载

    2022-10-11 18:04:57
  • SpringBoot实现埋点监控

    2022-11-27 06:32:07
  • Android实现自定义圆形进度条

    2022-10-28 04:55:22
  • Android 和 windows C/C++/QT通讯时字节存储

    2022-07-16 06:09:02
  • 利用Kotlin开发你的第一个Android应用

    2022-04-23 14:39:53
  • asp之家 软件编程 m.aspxhome.com