快速搭建MAVEN私服
環境:windows64位
1.下載nexus執行包
https://sonatype-download.global.ssl.fastly.net/repository/repositoryManager/oss/nexus-2.14.8-01-bundle.zip
2.解壓
D:\nexus-2.14.8-01-bundle
會有兩個資料夾
nexus-2.14.8-01 和 sonatype-work
3.配置環境變數
D:\nexus-2.14.8-01-bundle\nexus-2.14.8-01\bin
4.安裝nexus服務
nexus install
5.啟動nexus服務
nexus start
6.訪問地址,預設埠是8081
http://127.0.0.1:8081/nexus/
使用者名稱密碼,預設是:admin/admin123
7.服務安裝好之後配置settings.xml檔案 以下是我在工作中用到的完整配置
<?xml version="1.0" encoding="UTF-8"?>
<settingss 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/settingss-1.0.0.xsd">
<!--<localRepository>C:\Users\Administrator\.m2\repository</localRepository>-->
<mirrors>
<mirror>
<id>releases</id>
<mirrorOf>*</mirrorOf>
<url>http://192.168.1.188:8081/nexus/content/groups/public</url>
</mirror>
<mirror>
<id>snapshots</id>
<mirrorOf>*</mirrorOf>
<url>http://192.168.1.188:8081/nexus/content/groups/public-snapshots</url>
</mirror>
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
<!--
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
<mirror>
<id>uk</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://uk.maven.org/maven2/</url>
</mirror>
<mirror>
<id>CN</id>
<name>OSChina Central</name>
<url>http://maven.oschina.net/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
mirror>
<id>nexus</id>
<name>internal nexus repository</name>
<url>http://192.168.1.100:8081/nexus/content/groups/public/</url>
<url>http://repo.maven.apache.org/maven2</url>
<mirrorOf>central</mirrorOf>
</mirror-->
</mirrors>
<servers>
<server>
<id>releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>
<profiles>
<profile>
<id>nexus</id>
<repositories>
<repository>
<id>releases</id>
<url>http://nexus-releases</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
<repository>
<id>snapshots</id>
<url>http://nexus-snapshots</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>releases</id>
<url>http://nexus-releases</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</pluginRepository>
<pluginRepository>
<id>snapshots</id>
<url>http://nexus-snapshots</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>nexus</activeProfile>
</activeProfiles>
</settingss>
8.配置專案pom.xml檔案,在pom檔案中新增如下配置 ,注意<id>releases</id>和<id>snapshots</id> 需要和settings.xml檔案中的id一致
<distributionManagement>
<repository>
<id>releases</id>
<name>User Project Release</name>
<url>http://192.168.1.188:8081/nexus/content/repositories/releases/</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<name>User Project SNAPSHOTS</name>
<url>http://192.168.1.188:8081/nexus/content/repositories/snapshots/</url>
</snapshotRepository>
</distributionManagement>
9.關聯settings.xml檔案本人用myeclipse ,選擇Window->Preferences->輸入maven->選擇User Settings設定上面配置的settings檔案
10.所有的配置基本配置完成
執行專案會從代理倉庫下載jar包到私服倉庫,再從私服下載到本地
11.倉庫型別
hosted:本地倉庫,通常我們會部署自己的構件到這一型別的倉庫。比如公司的第二方庫。
proxy:代理倉庫,它們被用來代理遠端的公共倉庫,如maven中央倉庫。
group:倉庫組,用來合併多個hosted/proxy倉庫。
hosted一般可以分為
3rd party:一般用於上傳三方的jar包
Releases:公司專案的發行版本
Snapshots:公司專案的快照版本,也就是臨時版本
12.
使用deploy命令釋出版本
deploy可能會出現401錯誤,許可權問題
1.確保第8條中倉庫id和settings.xml中倉庫id一致
2.需要給admin使用者deploy命令授權
maven私服安裝的時候已經是系統服務了,隨系統重啟而重啟