- 如果要在项目中deploy到nexus maven私服, 肯定要写下面配置
<distributionManagement>
<repository>
<id>qqttReleases</id>
<name>SES Releases</name>
<url>http://192.168.168.123:2019/repository/qqtt-releases/</url>
</repository>
<snapshotRepository>
<id>qqttSnapshots</id>
<name>SES Snapshots</name>
<url>http://192.168.168.123:2019/repository/qqtt-snapshots/</url>
</snapshotRepository>
</distributionManagement>
但是只写这个是不行的, maven不知道nexus的账号密码, 会报错401 ,unAuthorized错误.
这个时候你要修改下settings.xml配置文件
<server>
<id>qqttReleases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>qqttSnapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
repository 的id 和server 的id 对应上的话, 就会带着账号密码去deploy,这样才会成功
不确定是哪个settings文件,用下面命令查询下,别改错
mvn help:effective-settings
- 命令行上传也是同样的道理, 401错误
mvn deploy:deploy-file
-DgroupId=com.ses
-DartifactId=QQRWdrools
-Dversion=1.0-SNAPSHOT
-Dpackaging=jar
-Dfile=E:\temp\QQRWdrools-1.0-SNAPSHOT.jar
-Durl=http://192.168.168.198:2019/repository/ses-snapshots/
-DrepositoryId=qqttSnapshots
-注意 -DrepositoryId=qqttSnapshots 这个参数, 这个qqttSnapshots 指的就是server的id, 会带着这个server的账号密码去deploy.
总结: server 标签的id
- 要和distributionManagement下的repository的id对应上
- 要和DrepositoryId 对应上