如何配置 Maven 以登录到由 Nexus 托管的受用户名/密码保护的存储库?

Jul*_*les 5 nexus maven

我在 Nexus 中配置了一个存储库,其中包含不公开发布的项目,但需要从各种站点访问,因此无法在我的 LAN 上托管它。因此,我将它放在公共服务器上并在 Nexus 中设置存储库以要求用户名/密码访问,这工作正常。但是我不知道把 Maven 访问这个存储库的配置信息放在哪里...... Nexus 似乎不理解 HTTP 基本身份验证,所以我不能使用http://username:password@host/URL 格式来完成这项工作。那么我能做些什么来完成这项工作呢?

Man*_*ser 1

您所要做的就是在 settings.xml 中使用您的用户名、密码和 ID 设置服务器元素。

对于部署权限,请在 snapshotRepository 和存储库的 pom 文件的 distributionManagement 中使用该 id。

对于通过读取的访问权限,您通常通过公共组执行此操作,并在镜像中使用设置文件中定义的相同 ID。请参阅http://books.sonatype.com/nexus-book/reference/config-maven.html上的示例

现在,如果您只想授予像您这样经过身份验证的用户访问某些内容,您可以为该组创建一个存储库目标,然后为您的用户授予适当的安全权限。

  • 我认为值得一提的是,您只需在 $MAVEN_ROOT/conf/settings.xml 中添加服务器凭据,并在 <servers> 下添加 <server> <id>your-server-id</id> <username> username</username> <password>password</password> </server> 然后在 pom.xml 文件中定义存储库 URL,而不是使用 <repository> <id>your-server-id</repository> 下载或分发id> <name>artifactory-releases</name> <url>http://foo.bar:8081/artifactory/bar-foo</url> </repository> (4认同)