2013-06-19 15 views
2

這裏的指令似乎很清楚:如何編寫實際運行的maven插件?

http://maven.apache.org/guides/plugin/guide-java-plugin-development.html 

不過,我碰到的第一個問題是,依賴關係是錯誤的。我還需要引用maven-plugin-annotations依賴關係。

然後,當我嘗試運行時,我得到了「在META-INF/maven/plugin.xml中找不到插件描述符」的錯誤。我還沒弄清楚該怎麼做。

我發現很多引用maven-plugin-plugin的頁面,但我無法弄清楚如何將它添加到pom中,以便它實際上做了任何允許我自己的插件運行的任何東西。

是否有更新版本的插件開發說明,其實際上提到需要使用maven-plugin-plugin?

如果我不能得到這個工作,我只會回去使用exec-maven-plugin。這很醜,但至少它很容易工作。

+0

您可以顯示POM?你可以從[this]開始(https://github.com/khmarbaise/Maven-Echo-Plugin/blob/master/pom.xml)作爲參考。 – khmarbaise

+0

我也有問題,以下的教程,獲取'錯誤提取插件描述符:'找不到插件的mojo定義:com.myplugin' –

回答

1

如果我沒有記錯,你需要配置maven-plugin-plugin這樣避免了「找不到插件描述符...「問題。

<plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-plugin-plugin</artifactId> 
     <version>3.2</version> 
     <configuration> 
      <!-- see http://jira.codehaus.org/browse/MNG-5346 --> 
      <skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound> 
     </configuration> 
      <executions> 
      <execution> 
      <id>mojo-descriptor</id> 
      <goals> 
       <goal>descriptor</goal> 
      </goals> 
      </execution> 
     </executions> 
</plugin> 

我分叉叫maven-wrapper(該Gradle wrapper港)一個簡單的GitHub的項目,使之成爲Maven插件。

「這應該很容易」 你要弄清楚,你最終可能會被遺漏的部分:

+0

將你的xml例子添加到我的'pom.xml'後我停止了'錯誤提取插件描述符:'沒有找到mojo定義插件:com.myplugin',並開始得到'編譯錯誤:...錯誤:包org.apache.maven.plugins.annotations不存在,這似乎是更好的:) –

+0

只需要添加依賴:' org.apache.maven.plugin-tools maven-plugin-annotations 3。3 提供<! - 註釋只用於構建插件 - > ' –