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 的文章