Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Maven Auth错误与Artifactory_Java_Maven_Authentication_Passwords_Artifactory - Fatal编程技术网

Java Maven Auth错误与Artifactory

Java Maven Auth错误与Artifactory,java,maven,authentication,passwords,artifactory,Java,Maven,Authentication,Passwords,Artifactory,我正试图在本地计算机上安装artifactory来管理我所有的项目jar。 我已经设置了artifactory,所以它有两个用户:admin和user,不允许匿名登录。 以下是my settings.xml: <?xml version="1.0" encoding="UTF-8"?> <settings> <servers> <server> <id>central</id> <

我正试图在本地计算机上安装artifactory来管理我所有的项目jar。 我已经设置了artifactory,所以它有两个用户:admin和user,不允许匿名登录。 以下是my settings.xml:

<?xml version="1.0" encoding="UTF-8"?>
<settings>
<servers>
    <server>
        <id>central</id>
        <username>user</username>
        <password>{encrypted-pssw}</password>
    </server>
    <server>
        <id>snapshot</id>
        <username>user</username>
        <password>{encrypted-pssw}</password>
    </server>
</servers>
<mirrors>
    <mirror>
        <mirrorOf>*</mirrorOf>
        <name>remote-repos</name>
        <url>http://localhost:8081/artifactory/remote-repos</url>
        <id>remote-repos</id>
    </mirror>
</mirrors>
<profiles>
    <profile>
        <id>central</id>
        <repositories>
            <repository>
                <id>artifactory</id>
                <url>http://localhost:8081/artifactory/repo</url>
                <layout>default</layout>
                <name>Artifactory default repo</name>
            </repository>
        </repositories>
    </profile>
</profiles>
<activeProfiles>
    <activeProfile>central</activeProfile>
</activeProfiles>
我也尝试过rsa身份验证,但没有成功

编辑:更多信息:

如果我尝试使用存储库中的broswer登录,它会要求输入用户名和密码,如果我输入用户名和密码(使用来自artifactory的加密密码),它允许我查看存储库


如果我使用作为url:它可以工作,maven可以登录,但是如果我使用此解决方案,我需要在所有项目中复制我的密码(注意:url中使用的密码是我从Artifactory中的加密密码字段获得的密码,而不是我从maven命令获得的双重加密密码)这可能是由于以下原因造成的:

  • 您是否可以检查此用户是否具有在“远程repos”虚拟存储库下聚合的远程存储库上的部署权限?如果没有,则应向用户授予生成解决方案所需的远程存储库的部署权限。如果您不确定是否可以尝试使用管理员用户,看看它是否有效

  • 检查是否在您的工件UI-->管理-->安全配置-->中选中了“隐藏未授权资源的存在”复选框?如果是这样的话,您需要在maven上定义“抢占式身份验证”(应该在settings.xml文件中定义)。请参阅google中关于如何添加它的内容

  • 我想到的最后一件事是,您是否可以再次检查settings.xml文件中是否正确写入了加密密码


  • 希望这将有助于您找到问题的根本原因并加以解决。

    这可能是由于以下原因造成的:

  • 您是否可以检查此用户是否具有在“远程repo”下聚合的远程存储库上的部署权限虚拟存储库?如果不是,则应授予用户对生成解决方案所需的远程存储库的部署权限。如果不确定是否可以尝试使用管理员用户,并查看其是否有效

  • 检查是否在您的人工用户界面-->管理-->安全配置-->“隐藏未授权资源的存在”中选中此复选框?如果选中此复选框,则需要在maven上定义“抢占式身份验证”(应在settings.xml文件中定义)。请参阅google中的如何添加它

  • 我想到的最后一件事是,您是否可以再次检查settings.xml文件中是否正确写入了加密密码


  • 希望这将有助于您找到问题的根本原因并加以解决。

    您还应该检查哪些settings.xml。根据maven网站:

    There are two locations where a settings.xml file may live:
    
    The Maven install: ${maven.home}/conf/settings.xml
    A user’s install: ${user.home}/.m2/settings.xml
    

    我试图修改第一个settings.xml文件,但没有成功,将我的凭据添加到第二个文件起作用。如果您使用
    -e
    标志运行maven命令,它还会告诉您设置文件正在尝试使用,您还应该检查哪些settings.xml。根据maven网站:

    There are two locations where a settings.xml file may live:
    
    The Maven install: ${maven.home}/conf/settings.xml
    A user’s install: ${user.home}/.m2/settings.xml
    

    我尝试修改第一个settings.xml文件时运气不佳,将我的凭据添加到第二个成功。如果使用
    -e
    标志运行maven命令,它还将告诉您设置文件它正在尝试使用请删除文件中的所有镜像

    
    中心的
    用户
    {加密pssw}
    快照
    用户
    {加密pssw}
    中心的
    人工制品
    http://localhost:8081/artifactory/repo
    违约
    人工默认回购
    中心的
    
    请删除文件中的所有镜像

    
    中心的
    用户
    {加密pssw}
    快照
    用户
    {加密pssw}
    中心的
    人工制品
    http://localhost:8081/artifactory/repo
    违约
    人工默认回购
    中心的
    
    下面的问题表示该用户是否有权限部署到远程存储库,而不是查看。这是两种不同的权限。您可以验证并更新吗?是的,用户拥有所有权限:如果我使用ip方法登录(用户:pssw@ip:端口)它可以部署在接收到“无法将工件org.apache.maven.plugins:maven clean plugin:pom:2.5从/到远程repos():未授权,ReasonPhase:Unauthorized.”后,您是否可以显示在artifactory.log中看到的错误。->[帮助1]“错误?artifactory.log中没有显示任何内容,但在request.log中它打印了以下行:“20161101133853 | 1 | request | 127.0.0.1 |未经身份验证|用户| HEAD |/remote repos/org/apache/maven/plugins/maven clean plugin/2.5/maven-clean-plugin-2.5.pom | HTTP/1.1 | 401 |0”正如您在request.log中看到的,请求到达Artifactory时没有用户:“non_authenticated_user”。通常,您会看到另一行,就在这一行下面,maven正在发送另一个带有凭据的请求。下面的问题表示该用户是否有权部署到远程存储库,而不是查看。这是两个dif不同权限。您能验证和更新吗?是的,用户拥有所有权限:如果我使用ip方法登录(用户:pssw@ip:端口)它可以部署在接收到“无法将工件org.apache.maven.plugins:maven clean plugin:pom:2.5从/到远程repos():未授权,ReasonPhase:Unauthorized.”后,您是否可以显示在artifactory.log中看到的错误。->[帮助1]'error?artifactory.log中没有显示任何内容,但在request.log中它打印了这一行:“20161101133853 | 1 | request | 127.0.0.1 |未经身份验证的| user | HEAD |/remote repos/org/apache/