如何通过我的代码 (pom.xml) 或命令提示符设置我的 Maven setting.xml

How can I set up my maven setting.xml through my code(pom.xml) or command prompt

实际上,我正在另一台远程机器上执行我的 maven 代码。我的 Java 代码依赖于一些从 jFrog artifactory 下载的海关依赖项。 我无法在每台机器上设置我的用户名和密码。有什么办法可以通过代码来实现,即 pom.xml 或 cmd。 Ex:setting.xml

<settings>
    <servers>
        <server><id>central</id><username>USER_NAME</username><password>$USER_PWD</password></server>
        <server><id>snapshot</id><username>USER_NAME</username><password>$USER_PWD</password></server>
    </servers>    
</settings>

看来你做的和我的设置差不多。在 settings.xml 中添加服务器凭据后,您只需将存储库添加为始终为 activated/running 的配置文件。像这样:

<profiles>
    <profile>
        <id>artifactory</id>
        <repositories>
            <repository>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
              <id>central</id>
              <name>libs-release</name>
              <url>http://artifactory-url/libs-release</url>
            </repository>
            <repository>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
                <id>snapshot</id>
                <name>libs-snapshot</name>
                <url>http://artifactory-url/libs-snapshot</url>
            </repository>
        </repositories>
    </profile>
</profiles>

<activeProfiles>
    <activeProfile>artifactory</activeProfile>
</activeProfiles>

我所做的只是在不同的机器上复制粘贴此 settings.xml。只要网络可达(我用的是vpn),就可以连接神器了

如果这不是您想要的,请发表评论。

如果您的问题是关于在您的不同机器上共享您的 settings.xml(例如 bamboo 代理等),您不妨使用:

mvn -s /path/to/settings.xml

settings.xml 的位置与您的上下文不同;例如,如果您将 settings.xml 放在 pom.xml 旁边,这将是:

mvn -s settings.xml clean install

我建议不要将此 settings.xmlpom.xml 放在同一个存储库中,否则您会将密码放在 GIT 存储库中,而您可能不会想要。

如果您只想与您的个人计算机共享此设置s,您可能也可以使用 GIT:直接在 ~/.m2 的广告效果是您不应触摸 localRepository 的路径(路径依赖于 OS)。

存储库应该包含一个 .gitignore 和这个最少的行:

repository

这只是为了不在存储库中存储缓存的依赖项。