groovy - protected Nexus 存储库的 Grape 配置

标签 groovy nexus ivy groovy-grape

我的公司使用 Nexus 作为其内部存储库,我正在尝试编写一个 Groovy 脚本来从中提取依赖项。但问题是该存储库受密码保护。我的 GrapeConfig.xml 文件必须是什么样子才能实现此功能?这是我目前拥有的。

<ivysettings>
  <settings defaultResolver="downloadGrapes"/>
    <credentials host="http://prdRepo:18900" 
           realm="prdRepo" 
           username="n"
           passwd="n"
  />

  <resolvers>
    <chain name="downloadGrapes">
      <filesystem name="cachedGrapes">
        <ivy pattern="${user.home}/.groovy/grapes/[organisation]/[module]/ivy-[revision].xml"/>
        <artifact pattern="${user.home}/.groovy/grapes/[organisation]/[module]/[type]s/[artifact]-[revision].[ext]"/>
      </filesystem>
      <ibiblio name="blahblah" root="http://http://prdRepo:18900/nexus/foo/bar/blahblah m2compatible="true"/>
    </chain>
  </resolvers>
</ivysettings>

然后当我尝试通过命令行安装时

grape -d install com.microsoft msutil 2000

它驻留在该存储库中,它给我一个 401 错误,未经授权的 URL。我的 GrapeConfig 是否有语法错误?

最佳答案

尝试按如下方式设置安全领域:

<credentials host="prdRepo" realm="Sonatype Nexus Repository Manager" username="????" passwd="????"/>

对于一个有效的 Ivy 示例, 请参阅:

附加说明:

您的 ibiblio 解析器格式不正确,URL 无效:

<ibiblio name="blahblah" root="http://http://prdRepo:18900/nexus/foo/bar/blahblah m2compatible="true"/>

尝试:

<ibiblio name="blahblah" root="http://prdRepo:18900/nexus/foo/bar/blahblah" m2compatible="true"/>

关于groovy - protected Nexus 存储库的 Grape 配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22792940/

相关文章:

maven - 为什么 Sonatype 文档建议在使用 mirrorOf 时在 settings.xml 中使用虚假 URL 重新定义中央存储库?

nginx - Nexus (3.2) 基本 URL 被忽略?

ivy - 这个 Ivy changedPattern/SNAPSHOT 配置有什么问题?

java - 如何使用grails中的脚本覆盖所有打印方法的功能

java - 如何将 java/groovy 中的网页从 ISO-8859-1 转换为 UTF-8

java - 如何通过 Nexus 获取 Spring-roo org.springframework.roo.annotations Artifact

java - 如何为 Ivy/Ant 指定 Eclipse 的 java.home 设置

Groovy 在列表上的不一致解构/分解?

hibernate - Grails的hasOne和hasMany具有相同的域和级联操作

build-automation - 在 Gradle 中递归发布是否可能/容易?