1. 程式人生 > 其它 >maven私服的搭建 、專案釋出到maven私服 與 從私服下載jar到本地倉庫 與 將第三方jar安裝到本地倉庫和maven私服

maven私服的搭建 、專案釋出到maven私服 與 從私服下載jar到本地倉庫 與 將第三方jar安裝到本地倉庫和maven私服

maven私服

1.1 搭建maven私服

①下載nexus

https://help.sonatype.com/repomanager2/download/download-archives---repository-manager-oss

②安裝nexus

將下載的壓縮包進行解壓,進入bin目錄

開啟cmd視窗並進入上面bin目錄下,執行nexus.bat install命令安裝服務(注意需要以管理員身份執行cmd命令)

③啟動nexus

經過前面命令已經完成nexus的安裝,在命令列執行nexus.bat start命令啟動nexus

④訪問nexus

啟動nexus服務後,訪問http://localhost:8081/nexus

點選右上角LogIn按鈕,進行登入。使用預設使用者名稱admin和密碼admin123登入系統

nexus倉庫型別

nexus預設內建了很多倉庫,這些倉庫可以劃分為4種類型,每種型別的倉庫用於存放特定的jar包,具體說明如下:

①hosted,宿主倉庫,部署自己的jar到這個型別的倉庫,包括Releases和Snapshots兩部分,Releases為公司內部發布版本倉庫、 Snapshots為公司內部測試版本倉庫

②proxy,代理倉庫,用於代理遠端的公共倉庫,如maven中央倉庫,使用者連線私服,私服自動去中央倉庫下載jar包或者外掛

③group,倉庫組,用來合併多個hosted/proxy倉庫,通常我們配置自己的maven連線倉庫組

④virtual(虛擬):相容Maven1版本的jar或者外掛

nexus倉庫型別與安裝目錄對應關係

1.2 (重點)將專案釋出到maven私服

maven私服是搭建在公司區域網內的maven倉庫,公司內的所有開發團隊都可以使用。例如技術研發團隊開發了一個基礎元件,就可以將這個基礎元件打成jar包釋出到私服,其他團隊成員就可以從私服下載這個jar包到本地倉庫並在專案中使用。

將專案釋出到maven私服操作步驟如下:

  1. 配置maven的settings.xml檔案
<server>
<id>releases</id>
<username>admin</username>   
<password>admin123</password>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>

​ 注意:一定要在idea工具中引入的maven的settings.xml檔案中配置

  1. 配置專案的pom.xml檔案
<distributionManagement>
<repository>
   <id>releases</id>
   <url>http://localhost:8081/nexus/content/repositories/releases/</url>
</repository>
<snapshotRepository>
   <id>snapshots</id>               
   <url>http://localhost:8081/nexus/content/repositories/snapshots/</url>   
</snapshotRepository>
</distributionManagement>

3.執行mvn deploy命令

1.3 (重點)從私服下載jar到本地倉庫

具體操作步驟如下:

<!--第一步:在maven的settings.xml檔案中配置下載模板-->
<profile>
	<id>dev</id>
	<repositories>
	  <repository>
		<id>nexus</id>
		<!--倉庫地址,即nexus倉庫組的地址-->
		<url>
		http://localhost:8081/nexus/content/groups/public/</url>
		<!--是否下載releases構件-->
		<releases>
		        <enabled>true</enabled>
		</releases>
		<!--是否下載snapshots構件-->
		<snapshots>
			<enabled>true</enabled>
		</snapshots>
		</repository>
	</repositories>
<pluginRepositories>
    <!-- 外掛倉庫,maven的執行依賴外掛,也需要從私服下載外掛 -->
    <pluginRepository>
	<id>public</id>
	<name>Public Repositories</name>
	<url>
	http://localhost:8081/nexus/content/groups/public/</url>
    </pluginRepository>
</pluginRepositories>
</profile>
<!--第二步:在maven的settings.xml檔案中配置啟用下載模板,啟用模板對應profile的id-->
<activeProfiles>
	<activeProfile>dev</activeProfile>
</activeProfiles>

1.4 將第三方jar安裝到本地倉庫和maven私服

在maven工程的pom.xml檔案中配置某個jar包的座標後,如果本地的maven倉庫不存在這個jar包,maven工具會自動到配置的maven私服下載,如果私服中也不存在,maven私服就會從maven中央倉庫進行下載。

但是並不是所有的jar包都可以從中央倉庫下載到,比如常用的Oracle資料庫驅動的jar包在中央倉庫就不存在。此時需要到Oracle的官網下載驅動jar包,然後將此jar包通過maven命令安裝到我們本地的maven倉庫或者maven私服中,這樣在maven專案中就可以使用maven座標引用到此jar包了。

1.4.1 將第三方jar安裝到本地倉庫

①下載Oracle的jar包(略)

②mvn install命令進行安裝

​ mvn install:install-file -Dfile=ojdbc14-10.2.0.4.0.jar -DgroupId=com.oracle -DartifactId=ojdbc14 –

​ Dversion=10.2.0.4.0 -Dpackaging=jar

③檢視本地maven倉庫,確認安裝是否成功

1.4.2 將第三方jar安裝到maven私服

①下載Oracle的jar包(略)

②在maven的settings.xml配置檔案中配置第三方倉庫的server資訊

<server>
  <id>thirdparty</id>
  <username>admin</username>
  <password>admin123</password>
</server>

③執行mvn deploy命令進行安裝

​ mvn deploy:deploy-file -Dfile=ojdbc14-10.2.0.4.0.jar -DgroupId=com.oracle -DartifactId=ojdbc14 –

​ Dversion=10.2.0.4.0 -Dpackaging=jar –

​ Durl=http://localhost:8081/nexus/content/repositories/thirdparty/ -DrepositoryId=thirdparty