2013-06-19 49 views
1

我正在嘗試編寫自己的Maven插件。當我手動mvn安裝插件項目時,我可以毫無問題地使用它,但是我從遠程Maven存儲庫中檢索它時遇到問題。如果我從.m2/repository目錄中刪除com/company/my-plugin,然後嘗試執行mvn install,則會發生此錯誤。當使用遠程服務器時,Maven插件找不到工件

[WARNING] The POM for com.company:my-plugin:jar:0.0.1-SNAPSHOT is missing, no dependency information available 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD FAILURE 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 0.472s 
[INFO] Finished at: Wed Jun 19 16:15:29 EDT 2013 
[INFO] Final Memory: 4M/122M 
[INFO] ------------------------------------------------------------------------ 
[ERROR] Plugin com.company:my-plugin:0.0.1-SNAPSHOT or one of its dependencies could not be resolved: Failed to read artifact descriptor for com.company:my-plugin:jar:0.0.1-SNAPSHOT: Could not find artifact com.company:my-plugin:pom:0.0.1-SNAPSHOT -> [Help 1] 

的唯一參考插件的POM是在build /插件部分:

<plugin> 
    <groupId>com.company</groupId> 
    <artifactId>my-plugin</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <configuration> 
     <sourceFiles> 
      <sourceFile>infile.foo</sourceFile> 
     </sourceFiles> 
     <outputFile>outpath/myfile.foo</outputFile> 
    </configuration> 
    <executions> 
     <execution> 
      <phase>process-resources</phase> 
      <goals> 
       <goal>my-goal</goal> 
      </goals> 
     </execution> 
    </executions> 
</plugin> 

我已經證實,該項目在我們的遠程倉庫,並在倉庫,其他存在依賴關係正在解決。然而,其他依賴不是插件。

是否有額外的配置,我需要指定解決插件依賴?有沒有一種方法可以幫助我更明確地找出導致此問題的原因?

回答

4

原來我需要單獨指定pom中插件庫的位置(除了正常指定遠程存儲庫外)。我錯過了下面的塊:

<pluginRepositories> 
    <pluginRepository> 
    <id>my-plugin-repo</id> 
    <url>https://nexus.company.com:8443/path/to/repository/</url> 
    </pluginRepository> 
</pluginRepositories> 
0

「[警告]爲com.company:my-plugin:jar:0.0.1-SNAPSHOT的POM缺失,沒有可用的依賴信息」

你知道,如果pom.xml的這個插件項目存在於您試圖從中拉取的插件遠程存儲庫中?如果不是,我可能認爲這應該是問題。

+0

它絕對是SEEMS在那裏。我們使用的是nexus服務器,我可以看到pom以及我期望用於正常maven部署的所有常見內容。 –

相關問題