nginx創建一個maven倉庫站點
server {
listen 80;
server_name nginx-maven-repository.域名;
client_max_body_size 200m;
# 如果倉庫不想開放給所有人可以簡單配置個認證
auth_basic "Administrator's Area";
auth_basic_user_file /etc/nginx/.htpasswd;
# maven站點路徑
location / {
root maven站點路徑;
}
}
.htpasswd可以參考Nginx的配置文檔
https://docs.nginx.com/nginx/admin-guide/security-controls/configuring-http-basic-authentication
在要發佈jar包的機器上找到settings.xml
mvn -v
會輸出類似以下內容:
Apache Maven 3.0.5
Maven home: /usr/share/maven
編輯/usr/share/maven/conf/settings.xml,在<servers>標籤里加入nginx-maven-repository的配置/<servers>
<server>
<username>ssh用戶名/<username>
<password>ssh密碼/<password>
<server>
<username>http認證用戶名/<username>
<password>http認證密碼/<password>
也可以編輯~/.m2/settings.xml
修改要發佈到maven倉庫的pom.xml
<repositories>
<repository>
<name>ref-nginx-maven-repository/<name>
<distributionmanagement>
<repository>
<build>
<extensions>
<extension>
<groupid>org.apache.maven.wagon/<groupid>
<artifactid>wagon-ssh/<artifactid>
<version>2.10/<version>
發佈到倉庫
mvn deploy
其它需要引用倉庫的pom.xml
<repositories>
<repository>
<name>ref-nginx-maven-repository/<name>
<dependencies>
<dependency>
<groupid>發佈到倉庫的groupId/<groupid>
<artifactid>發佈到倉庫的artifactId/<artifactid>
<version>發佈到倉庫的版本號/<version>
大功告成!
閱讀更多 chenjiafan 的文章