如何在gradle构建文件中配置maven本地和远程存储库?

时间:2011-12-05 09:52:30

标签: maven gradle

我想将maven本地存储库另外用于maven远程存储库。我找到了JIRA-Issue http://issues.gradle.org/browse/GRADLE-1173,但是以这种方式调整我的gradle构建文件仍然找不到仅在本地maven存储库中可用的一些快照依赖项。我收到一个错误,即找不到Snapshot-Dependency。

是否可以拥有一个本地和一个远程maven存储库?

以下是我的gradle构建文件的相关部分:

apply plugin: 'maven'

repositories {

    mavenLocal()

    maven {
        credentials {
            username "myusername"
            password "mypassword"
        }
        url "http://myremoterepository"
    }

}

2 个答案:

答案 0 :(得分:23)

我还需要对我的项目进行类似的设置,我可以验证你的build.gradle设置是否正常,只要你的Maven设置正确。

Gradle mavenLocal()依赖于 maven settings.xml文件中的localRepository定义:

  <localRepository>USER_HOME\.m2\repository</localRepository>

settings.xml应位于M2_HOME/confUSER_HOME/.m2 directory。你应该检查:

  1. maven 已正确安装
  2. M2_HOME环境变量存在
  3. settings.xml具有正确的localRepository已定义..

答案 1 :(得分:0)

Maven只能使用单个本地(“本地”=在Maven运行的计算机的硬盘上)。

如果您需要更多,您可以选择:

  • 运行远程服务器(如公司范围的代理)并在那里部署所有内容。将该服务器作为镜像放入settings.xml
  • 运行mvn install复制本地仓库中的工件(显然只有在拥有源时)
  • 运行本地服务器
  • 手动将工件复制到本地存储库