2015-05-14 144 views
0

我想從本地網絡訪問maven nexus存儲庫檢索我的項目依賴關係。Maven資源插件依賴關係

我已經在我的settings.xml中設置了一個存儲庫條目以及一個代理入口。

要做到這一點Netbeans說,它需要建立項目之前,它可以檢索依賴項。它運行一個mvn install命令並嘗試下載maven-resources-plugin pom。通過添加代理,我設法讓它下載pom。但是網絡上存在嚴格的政策,因爲它不允許從互聯網上下載罐子。

所以有幾個問題

  1. 爲什麼行家試圖讓這個POM,再加上它的依賴?
  2. 是否可以禁用它?
  3. 如果這是不可能的,我只能假設我將不得不:下載pom,將其改爲指向我的nexus存儲庫,並確保artefact id已添加到Nexus。它是否正確?
+0

它試圖因爲它是作爲的一部分下載Maven的資源 - 插件生命週期,當然還有maven-resources-plugin的依賴關係。如果這不起作用,那麼你的配置(settings.xml)不正常,或者你的項目配置(pom.xml)...可能你需要一個不同的版本,而不是你的內部Nexus提供的版本.. – khmarbaise

回答

1
  1. 的Maven不包含它需要建立你的POM中的一切。您已經在某處使用了maven-resources-plugin,即使它是您使用的另一個插件的傳遞依賴項。它需要從某個地方得到它。它會先嚐試你定義的鏡像,然後它會嘗試互聯網。 (maven-resources-plugin在resources:resources目標中用作進程的一部分:資源階段,這是大多數生命週期的第一階段,這意味着你很可能還缺少更多的插件和依賴項,它需要它們。)

  2. 您可以通過從POM中刪除相關配置來禁用它,但您將失去該功能。

  3. 你應該只需要下載你需要的文件,然後將它們上傳到你的連接點。下載你所需要的所有的依賴最簡單的方法是使用連接到互聯網的機器上並運行一個文件夾maven dependency:go-offline只包含您的POM

+0

謝謝,pom中可能與插件相關的唯一東西是''標籤。 SCM是一個插件嗎? – PDStat

+0

有一些默認加載的插件。例如,如果你正在構建一個jar,maven會需要這個插件。 – George

+0

啊是的,那會是爲什麼呢,謝謝! – PDStat