亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

詳解Spring Boot使用Maven自定義打包方式

 更新時間:2020年12月29日 08:36:07   作者:南國以南i  
這篇文章主要介紹了Spring Boot使用Maven自定義打包方式,本文通過多種方式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

前言:本文將告訴你如何將程序Jar與與依賴Jar及配置文件分離打包,以下列舉了兩種不同Maven打包方式,其打包效果一致!

一、第一種Maven打包方式,將jar及resources下全部配置文件,拷貝到指定目錄:

<!--配置項--><properties> <!--自定義配置--> <project.jar.output.directory>E:/IDEAFile/file-copy/target/project</project.jar.output.directory></properties>
<build>
  <plugins>
   <!--項目依賴的jar文件,放置默認(rèn)配置目錄下-->
   <plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
   </plugin>

   <!-- 設(shè)置jar的入口類 -->
   <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.6</version>
    <configuration>
     <archive>
      <manifest>
       <addClasspath>true</addClasspath>
       <classpathPrefix>lib/</classpathPrefix>
       <mainClass>com.example.filecopy.FileCopyApplication</mainClass>
      </manifest>
     </archive>
    </configuration>
   </plugin>

  <!-- 使用maven-resources-plugin插件復(fù)制resources目錄下所有文件到指定的路徑-->
   <plugin>
    <artifactId>maven-resources-plugin</artifactId>
    <executions>
     <execution>
      <id>copy-resources</id>
      <phase>validate</phase>
      <goals>
       <goal>copy-resources</goal>
      </goals>
      <configuration>
       <outputDirectory>${project.build.directory}/project</outputDirectory>
       <resources>
        <resource>
         <directory>src/main/resources</directory>
         <filtering>true</filtering>
        </resource>
       </resources>
      </configuration>
     </execution>
    </executions>
   </plugin>

   <!--使用maven-antrun-plugin插件將jar復(fù)制到指定的目錄下-->
   <plugin>
    <artifactId>maven-antrun-plugin</artifactId>
    <executions>
     <execution>
      <!-- 在maven進(jìn)行package的時候執(zhí)行-->
      <phase>package</phase>
      <configuration>
       <tasks>
        <!--todir:是將要復(fù)制jar包到的地方,overwrite:是否重寫-->
        <copy todir="${project.jar.output.directory}" overwrite="true">
         <!--獲取父目錄下的target文件夾中的jar-->
         <fileset dir="${project.build.directory}">
          <include name="*.jar"/>
         </fileset>
        </copy>
       </tasks>
      </configuration>
      <goals>
       <goal>run</goal>
      </goals>
     </execution>
    </executions>
   </plugin>
  </plugins>
 </build>

第二種Maven打包方式使用 assembly插件,將jar及配置文件進(jìn)行壓縮打包到指定目錄:

<plugins>
   <!-- 項目依賴的jar文件,放置默認(rèn)配置目錄下-->
   <plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
   </plugin>

   <!-- 設(shè)置jar的入口類-->
   <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.6</version>
    <configuration>
     <archive>
      <manifest>
       <addClasspath>true</addClasspath>
       <classpathPrefix>lib/</classpathPrefix>
       <mainClass>com.example.filecopy.FileCopyApplication</mainClass>
      </manifest>
     </archive>
    </configuration>
   </plugin>

    <!--assembly插件-->
   <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>2.4</version>
    <configuration>
     <!--指定壓縮包名稱-->
     <finalName>project</finalName>
     <!--指定assembly配置文件配置-->
     <descriptors>
      <descriptor>/assembly/assembly.xml</descriptor>
     </descriptors>
     <!--打包tar.gz輸出target文件夾中-->
     <outputDirectory>${project.build.directory}</outputDirectory>
     <appendAssemblyId>false</appendAssemblyId>
    </configuration>
    <executions>
     <execution>
      <phase>package</phase>
      <goals>
       <goal>single</goal>
      </goals>
     </execution>
    </executions>
   </plugin>
  </plugins>

assembly文件:

<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.0.0"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.0.0 http://maven.apache.org/xsd/assembly-2.0.0.xsd">
 <id>leaves</id>
 <formats>
  <!--壓縮文件形式 可選 zip tar.gz等 -->
  <format>zip</format>
 </formats>
 <includeBaseDirectory>true</includeBaseDirectory>

 <!-- 項目文件處理 -->
 <fileSets>
  <!--配置文件輸出位置根目錄文件夾下-->
  <fileSet>
   <directory>${basedir}/src/main/resources</directory>
   <includes>
    <include>**</include>
   </includes>
   <filtered>true</filtered>
   <outputDirectory>${file.separator}</outputDirectory>
  </fileSet>

  <!-- 項目代碼生成的jar文件放在根目錄 -->
  <fileSet>
   <directory>${project.build.directory}</directory>
   <outputDirectory>${file.separator}</outputDirectory>
   <includes>
    <include>*.jar</include>
   </includes>
  </fileSet>
 </fileSets>
</assembly>

到此這篇關(guān)于Spring Boot使用Maven自定義打包方式的文章就介紹到這了,更多相關(guān)Spring Boot Maven自定義打包內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論