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

溫馨提示×

溫馨提示×

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

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

Maven pom.xml 添加本地jar包依賴以及打包方法

發布時間:2020-09-17 08:10:15 來源:腳本之家 閱讀:981 作者:Strugglion 欄目:開發技術

Maven項目打包時,如果遇到需要添加本地jar包依賴的時候,可以選擇兩種方法:

1. 安裝到本地倉庫

第一種方法比較常規,適用于需要添加的jar包也是由maven項目導出,含有pom文件的時候。只需要將jar包安裝到本地maven倉庫下,然后添加依賴即可。

(1)安裝到本地倉庫,執行以下命令(其中的-Dfile/-DgroupId/-DartifactId/-Dversion項根據pom文件內容填寫):

mvn install:install-file -Dfile=xxxxx.jar -DgroupId=xxx.xxx.xxx -DartifactId=xxxxx -Dversion=1.0.0 -Dpackaging=jar

(2)安裝之后可以在本地倉庫中找到對應的jar包。然后將對應的依賴信息插入到工程的pom文件即可:

<dependency>
  <groupId>xxx.xxx.xxx</groupId>
  <artifactId>xxxxx</artifactId>
  <version>1.0.0</version>
</dependency>

2. dependency中指定scope="system"和本地jar包路徑

這種方法適用于其他方式導出的jar包,jar包中不含有pom信息,從而無法安裝進本地倉庫的情況。做法是:先配置本地jar包依賴,然后在build時將設置將jar包導出,同時配置manifest。

(1)配置本地jar包依賴(systemPath指向本地jar包路徑):

<dependency>
  <groupId>com.amazonaws</groupId>
  <artifactId>aws-java-sdk-s3</artifactId>
  <version>1.11.0</version>
  <scope>system</scope>
  <systemPath>${project.basedir}/lib/xxx.jar</systemPath>
</dependency>

(2)在<build>的spring-boot-maven-plugin中設置將本地jar包導出到項目最終的依賴庫中:

<plugin>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-maven-plugin</artifactId>
  <configuration>
    <includeSystemScope>true</includeSystemScope>
  </configuration>
</plugin>

(3)如果項目使用maven-jar-plugin插件打包的話,還需要在manifectEntries中添加對應的jar包信息;否則雖然jar包導出了,但是項目生成的MANIFEST.MF文件中沒有對應的依賴信息,也會導致運行時找不到對應的class。

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-jar-plugin</artifactId>
  <configuration>
    <archive>
      <manifest>
        <addClasspath>true</addClasspath>
        <classpathPrefix>lib/</classpathPrefix>
        <mainClass>XXXX</mainClass>
      </manifest>
      <manifestEntries>
        <Class-Path>./ lib/xxxxx.jar</Class-Path>
      </manifestEntries>
    </archive>
    <outputDirectory>
      ${project.build.directory}/XXXXX
    </outputDirectory>
  </configuration>
</plugin>

(4)最后附上一個項目完整的<build>配置(該配置可以將最終生成的jar包和依賴庫、配置文件分開)。

<build>
  <finalName>XXXXX</finalName>
  <sourceDirectory>src/main/java</sourceDirectory>
  <resources>
    <resource>
      <directory>src/main/resources</directory>
      <targetPath>${project.build.directory}/XXXXX</targetPath>
      <excludes>
        <exclude>**/*.java</exclude>
      </excludes>
    </resource>
  </resources>

  <testSourceDirectory>src/test/java</testSourceDirectory>
  <testResources>
    <testResource>
      <directory>src/test/resources</directory>
      <filtering>true</filtering>
      <excludes>
        <exclude>**/*.java</exclude>
      </excludes>
    </testResource>
  </testResources>

  <plugins>
    <plugin>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-maven-plugin</artifactId>
      <configuration>
        <includeSystemScope>true</includeSystemScope>
      </configuration>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-surefire-plugin</artifactId>
      <configuration>
        <skipTests>true</skipTests>
      </configuration>
    </plugin>

    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-dependency-plugin</artifactId>
      <executions>
        <execution>
          <id>copy-dependencies</id>
          <phase>package</phase>
          <goals>
            <goal>copy-dependencies</goal>
          </goals>
          <configuration>
            <outputDirectory>
              ${project.build.directory}XXXXX/lib
            </outputDirectory>
          </configuration>
        </execution>
      </executions>
    </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <configuration>
          <archive>
            <manifest>
              <addClasspath>true</addClasspath>
              <classpathPrefix>lib/</classpathPrefix>
              <mainClass>xxx.xxx.XXXXX</mainClass>
            </manifest>
            <manifestEntries>
              <Class-Path>./ lib/xxxxx.jar</Class-Path>
            </manifestEntries>
          </archive>
          <outputDirectory>
            ${project.build.directory}/XXXXX
          </outputDirectory>
        </configuration>
      </plugin>
  </plugins>
</build>

到此這篇關于Maven pom.xml 添加本地jar包依賴以及打包方法的文章就介紹到這了,更多相關Maven pom.xml jar包內容請搜索億速云以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持億速云!

向AI問一下細節

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

AI

伽师县| 旺苍县| 久治县| 吉木萨尔县| 涞水县| 溧水县| 湄潭县| 谷城县| 兴国县| 镇康县| 连城县| 邢台市| 丰都县| 东丰县| 呈贡县| 定南县| 江安县| 翁牛特旗| 东兰县| 龙泉市| 治多县| 清原| 化隆| 濮阳市| 东源县| 花莲市| 杭锦后旗| 福清市| 丰城市| 虹口区| 平顶山市| 长汀县| 顺义区| 稷山县| 博野县| 裕民县| 堆龙德庆县| 乐山市| 修武县| 都江堰市| 临武县|