2017-08-08 71 views
1

這已經在少數地方問過。存儲庫vs插件庫

但答案含糊不清。

所以讓我再問一次。

阿帕奇Maven的說,在http://maven.apache.org/ref/3.5.0/maven-model/maven.html

  • 庫/庫*名單(很多)的 遠程資源庫,用於發現依賴關係和擴展的列表。
  • pluginRepositories/pluginRepository *名單(很多)的遠程資源庫,用於發現插件的 列表建立 和報告。

但是,有人可以解釋這是什麼。我發現了依賴關係。但是「發現構建和報告的插件」意味着什麼。和「發現擴展」?

回答

1

PluginRepository是maven搜索maven插件的地方。這就是爲什麼它提到構建(構建生命週期)和報告(站點生命週期)。例如。這是在maven-compile-pluginmaven-surefire-plugin存在

正常庫用於依賴於你的應用程序,即部分<dependencies><dependencyManagement>。它可能是您的junitcommons-logging或您需要的任何罐子。

通常他們都可以指向相同的存儲庫,事實上在默認情況下,它們都指向Maven Central,但是您可能需要一些特殊的位置,或者在存儲庫上有不同的更新策略。

我發現了一個例子,一個Spring項目,在這裏你可以看到他們兩個正在使用(底部):https://github.com/spring-projects/spring-data-jpa/blob/master/pom.xml

<repositories> 
    <repository> 
     <id>spring-libs-snapshot</id> 
     <url>https://repo.spring.io/libs-snapshot</url> 
    </repository> 
</repositories> 

<pluginRepositories> 
    <pluginRepository> 
     <id>spring-plugins-release</id> 
     <url>https://repo.spring.io/plugins-release</url> 
    </pluginRepository> 
</pluginRepositories> 

它們都指向兩個不同的網址,因此,Maven插件和依賴關係取自兩個不同的地方