2016-11-22 98 views
3

我有Maven和Gradle都安裝在我的系統中。gradle配置使用maven本地存儲庫

默認情況下,maven將USER_HOME/.m2/repository中的依賴項jar和USER_HOME/.gradle/caches/modules-2中的Gradle存儲分別存儲。

對於同一個項目,我最終會在系統中得到2個罐子的副本。

是否有配置在全局級別的gradle中設置,以便它使用現有的Maven存儲庫而不是它自己的。

在此先感謝。

回答

1

您可以使用

mavenLocal() 

如果存儲庫的位置必須是在其他地方,你可以使用

repositories { 
    maven { 
     url '/path/to/your/repository' 
    } 
} 
+0

請注意,mavenLocal之間()和Maven小的差別{}。 https://issues.gradle.org/browse/GRADLE-2034 「」這是固定的,但僅適用於mavenLocal()。對於所有其他存儲庫,仍然認爲該工件在pom時丟失(除非包裝=='pom')「」。所以如果jar在本地repo中缺失,maven {}會失敗,但mavenLocal不會。 – wisent

+0

我認爲mavenLocal()用於特定於項目的build.gradle。我們可以在GRADLE_HOME中爲所有項目配置相同的配置嗎? –

+0

您可以添加GRADLE_HOME/init.gradle。在此文件中,您可以爲所有項目添加配置。查看[documentation](https://docs.gradle.org/current/userguide/init_scripts.html#sec:configuring_projects_from_an_init_script) – marok