我想我的Maven專案發布到本地目錄,但不是在$HOME/.m2/repository。我創建了以下目錄結構:
$HOME/myrepo
|- third_party
- private
$HOME/myrepo/third_party顧名思義,該目錄包含來自 3rd 方的外部工件。我想將我自己的專案發布到$HOME/myrepo/private. 因此,我使用以下調整后的$HOME/.m2/settings.xml檔案:
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers>
<server>
<id>maven-private</id>
<username></username>
<password></password>
</server>
</servers>
<mirrors>
<mirror>
<id>maven-local</id>
<url>file:///home/user/myrepo/third_party</url>
<mirrorOf>*</mirrorOf>
</mirror>
</mirrors>
</settings>
pom.xml我的測驗專案的檔案如下所示:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany</groupId>
<artifactId>app</artifactId>
<version>1.0</version>
<packaging>jar</packaging>
<name>app</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<distributionManagement>
<repository>
<id>maven-private</id>
<name>Internal Release Repository</name>
<url>file:///home/user/myrepo/private</url>
</repository>
</distributionManagement>
</project>
當我跑
mvn install
專案編譯成功,所有需要的檔案都從 獲取$HOME/myrepo/third_party,但是,編譯后專案總是安裝到$HOME/.m2/repository.
我必須如何配置 maven 才能將我的專案發布到$HOME/myrepo/private目錄中?
uj5u.com熱心網友回復:
如果您想將工件放在本地以外的存盤庫中,您不會考慮安裝而是部署它們。根據定義使用 maven 安裝會將工件放在本地存盤庫中 - 因此,除非您打算覆寫其位置.m2/repository及其所有內容,否則只需運行
mvn deploy
uj5u.com熱心網友回復:
您可以通過編輯 Maven 設定檔案來更改本地 Maven 存盤庫的位置,即安裝工件的位置~/.m2/settings.xml。具體來說,您有興趣更改<localRepository>您選擇的to 目錄。需要注意的一件事是,根據用戶指南的配置本地存盤庫部分,您指定的路徑必須是絕對路徑。另請注意,這將影響所有工件(包括您的私有和第 3 方工件),因為 Maven 僅支持單個本地存盤庫。
例子:
<settings>
<!-- settings -->
<localRepository>/path/to/local/repo/</localRepository>
<!-- more settings -->
</settings>
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/321396.html
