亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Springboot基于assembly服務化實現打包的詳細教程

發布時間:2020-06-23 10:48:12 來源:億速云 閱讀:731 作者:清晨 欄目:編程語言

這篇文章將為大家詳細講解有關Springboot基于assembly服務化實現打包的詳細教程,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

(1)首先我們編輯 assembly.xml 配置文件,在前文的基礎上新增第三方依賴設置(高亮部分),實現將第三方的 jar 包添加到壓縮包里的 lib 目錄:

<&#63;xml version="1.0" encoding="UTF-8"&#63;>
<assembly>
  <!--
    必須寫,否則打包時會有 assembly ID must be present and non-empty 錯誤
    這個名字最終會追加到打包的名字的末尾,如項目的名字為 hangge-test-0.0.1-SNAPSHOT,
    則最終生成的包名為 hangge-test-0.0.1-SNAPSHOT-bin.tar.gz
   -->
  <id>bin</id>
  <!-- 打包的類型,如果有N個,將會打N個類型的包 -->
  <formats>
<!--    <format>tar.gz</format>-->
    <format>zip</format>
  </formats>
  <includeBaseDirectory>true</includeBaseDirectory>

  <!--第三方依賴設置-->
  <dependencySets>
    <dependencySet>
      <!-- 不使用項目的artifact,第三方jar不要解壓,打包進zip文件的lib目錄 -->
      <useProjectArtifact>false</useProjectArtifact>
      <outputDirectory>lib</outputDirectory>
      <unpack>false</unpack>
    </dependencySet>
  </dependencySets>

  <!--文件設置-->
  <fileSets>
    <!--
      0755->即用戶具有讀/寫/執行權限,組用戶和其它用戶具有讀寫權限;
      0644->即用戶具有讀寫權限,組用戶和其它用戶具有只讀權限;
    -->
    <!-- 將src/main/assembly/bin目錄下的所有文件輸出到打包后的bin目錄中 -->
    <fileSet>
      <directory>src/main/assembly/bin</directory>
      <outputDirectory>bin</outputDirectory>
      <fileMode>0755</fileMode>
      <!--如果是腳本,一定要改為unix.如果是在windows上面編碼,會出現dos編寫問題-->
      <lineEnding>unix</lineEnding>
      <filtered>true</filtered><!-- 是否進行屬性替換 -->
    </fileSet>
    <!-- 將src/main/assembly/config目錄下的所有文件輸出到打包后的config目錄中 -->
    <fileSet>
      <directory>src/main/assembly/config</directory>
      <outputDirectory>config</outputDirectory>
      <fileMode>0644</fileMode>
    </fileSet>
    <!-- 將src/main/resources下配置文件打包到config目錄 -->
    <fileSet>
      <directory>src/main/resources</directory>
      <outputDirectory>./config</outputDirectory>
      <includes>
        <include>**/*.xml</include>
        <include>**/*.properties</include>
        <include>**/*.yml</include>
      </includes>
      <filtered>true</filtered><!-- 是否進行屬性替換 -->
    </fileSet>
    <!-- 將項目啟動jar打包到lib目錄中 -->
    <fileSet>
      <directory>target</directory>
      <outputDirectory>./</outputDirectory>
      <includes>
        <include>*.jar</include>
      </includes>
    </fileSet>
    <!-- 將項目說明文檔打包到docs目錄中 -->
    <!-- <fileSet>
      <directory>.</directory>
      <outputDirectory>./docs</outputDirectory>
      <includes>
        <include>*.md</include>
      </includes>
      <fileMode>0644</fileMode>
    </fileSet>-->
    <fileSet>
      <directory>docs</directory>
      <outputDirectory>./docs</outputDirectory>
      <fileMode>0644</fileMode>
    </fileSet>
    <fileSet>
      <directory>src/main/assembly/docs</directory>
      <outputDirectory>./docs</outputDirectory>
      <fileMode>0644</fileMode>
    </fileSet>
  </fileSets>
</assembly>

(2)接著編輯項目的 pom.xml 文件,先前使用的是 spring-boot-maven-plugin 來打包,這個插件會將項目所有的依賴打入項目 jar 包里面。我們將其替換為 maven-jar-plugin,并進行相關設置

 <build>
    <plugins>
      <!-- 指定啟動類,將依賴打成外部jar包 -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <configuration>
          <archive>
            <!-- 生成的jar中,不要包含pom.xml和pom.properties這兩個文件 -->
            <addMavenDescriptor>false</addMavenDescriptor>
            <manifest>
              <!-- 是否要把第三方jar加入到類構建路徑 -->
              <addClasspath>true</addClasspath>
              <!-- 外部依賴jar包的最終位置 -->
              <!-- 因為我們將第三方jar和本項目jar放在同一個目錄下,這里就使用./ -->
              <classpathPrefix>./lib</classpathPrefix>
              <!-- 項目啟動類 -->
              <mainClass>com.yuehang.disneyland.DisneylandApplication</mainClass>
            </manifest>
          </archive>
        </configuration>
      </plugin>
      <plugin>
        <!--主要使用的是maven提供的assembly插件完成-->
        <artifactId>maven-assembly-plugin</artifactId>
        <version>3.1.1</version>
        <configuration>
          <descriptors>
            <!--具體的配置文件-->
            <descriptor>src/main/assembly/assembly.xml</descriptor>
          </descriptors>
        </configuration>
        <executions>
          <execution>
            <id>make-assembly</id>
            <!--綁定到maven操作類型上-->
            <phase>package</phase>
            <!--運行一次-->
            <goals>
              <goal>single</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

然后打包出來的結構

Springboot基于assembly服務化實現打包的詳細教程

運行就ok了

關于Springboot基于assembly服務化實現打包的詳細教程就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

建宁县| 泾阳县| 介休市| 武强县| 蚌埠市| 交城县| 塔河县| 平遥县| 密云县| 东方市| 定日县| 灵山县| 洪泽县| 乌恰县| 嘉黎县| 安溪县| 彭山县| 广灵县| 黑山县| 隆安县| 固安县| 海宁市| 祁东县| 石河子市| 石狮市| 寿宁县| 莱州市| 新邵县| 资中县| 若尔盖县| 凤翔县| 宜君县| 保山市| 株洲县| 仙游县| 江阴市| 景宁| 囊谦县| 韶山市| 晋城| 英德市|