我在与a multi-module project一个问题,其中所述模块中的一个是基于注释的行家-插件依赖性:https://github.com/fommil/netlib-java/Maven插件如在多模块项目
基本上,mvn compile
失败第一次,然后成功时我做了第二次mvn compile
。
它也可以从清洁确定,如果我做
mvn -pl generator compile
mvn compile
我想构建一气呵成成功,这样我可以做所有模块的构建和发布。
我在与a multi-module project一个问题,其中所述模块中的一个是基于注释的行家-插件依赖性:https://github.com/fommil/netlib-java/Maven插件如在多模块项目
基本上,mvn compile
失败第一次,然后成功时我做了第二次mvn compile
。
它也可以从清洁确定,如果我做
mvn -pl generator compile
mvn compile
我想构建一气呵成成功,这样我可以做所有模块的构建和发布。
我快速浏览了一下你的项目,发现“generator”插件是多模块项目和的一部分此项目内的相同版本)。这不是合法使用!你必须从反应堆外提供所有必需的插件!
原因是,maven试图填充反应堆并事先确定所有需要的插件。然后它开始构建。如果生成器插件是项目的一部分,Maven无法执行此操作。
Stephen Connolly在maven-users列表或其他地方写过这篇文章,但目前我找不到它,没有时间搜索。
心连心, - 马丁
这真是太遗憾了,因为我的项目显然是具有相同反应器的插件的有效用例。 – fommil
(我把这个作为一个答案,因为它不适合在评论区)
嗯,我从Github上下载的11fe0f5修订,并试图MVN清洁父/根文件夹中安装看看会发生什么,我得到这个错误:
[INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 6.444s [INFO] Finished at: Mon Jun 24 20:00:30 BRT 2013 [INFO] Final Memory: 20M/350M [INFO] ------------------------------------------------------------------------ [ERROR] Could not find goal 'interface' in plugin org.netlib:generator:1.0-SNAPSHOT among available goals -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoNotFoundException
这使我怀疑,如果接口的目标发电机插件确实存在,如果它正在生成的目标描述符.. 所以看发生器模块POM。 xml我找不到任何maven-plugin配置来生成一个插件模块,所以我改变你的Maven的插件,插件配置来:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-plugin-plugin</artifactId>
<version>3.2</version>
<configuration>
<skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
</configuration>
<executions>
<execution>
<id>mojo-descriptor</id>
<phase>process-classes</phase>
<goals>
<goal>descriptor</goal>
</goals>
</execution>
</executions>
</plugin>
和添加的界面目标发电机插件,现在我能够从根文件夹就好了安装。
MVN干净安装部分输出:
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0 [INFO] [INFO] --- maven-jar-plugin:2.3.2:jar (default-jar) @ netlib --- [INFO] Building jar: C:\ebook\netlib-java-11fe0f502496276be5536003eaacbde363317c b1\netlib\target\netlib-1.0-SNAPSHOT.jar [INFO] [INFO] --- maven-install-plugin:2.3.1:install (default-install) @ netlib --- [INFO] Installing C:\ebook\netlib-java-11fe0f502496276be5536003eaacbde363317cb1\ netlib\target\netlib-1.0-SNAPSHOT.jar to C:\Users\oltra01\.m2\repository\org\net lib\netlib\1.0-SNAPSHOT\netlib-1.0-SNAPSHOT.jar [INFO] Installing C:\ebook\netlib-java-11fe0f502496276be5536003eaacbde363317cb1\ netlib\pom.xml to C:\Users\oltra01\.m2\repository\org\netlib\netlib\1.0-SNAPSHOT \netlib-1.0-SNAPSHOT.pom [INFO] ------------------------------------------------------------------------ [INFO] Reactor Summary: [INFO] [INFO] parent ............................................ SUCCESS [0.478s] [INFO] generator ......................................... SUCCESS [6.172s] [INFO] netlib ............................................ SUCCESS [1:05.310s] [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 1:12.105s [INFO] Finished at: Mon Jun 24 19:55:08 BRT 2013 [INFO] Final Memory: 27M/491M [INFO] ------------------------------------------------------------------------
/目标是您使用的Maven的命令来获得你的问题的错误?你有没有尝试删除整个存储库? (也许你已经在那里安装了一个混乱的发生器版本)
随意看看源(上面链接):-)据我所知,该插件被正确包装,但我不知道你是什么意思“是NETLIB设置为POM相同的属性“ – fommil
即使在手动安装jlapack后,我也无法构建它(我调整了maven-compiler-plugin设置来添加接口mojo和您的AbstractNetlibGenerator,因此它不会使用jlapack javadoc,因此它会生成,但一些测试会保留失败,但如果我跳过它似乎工作 - 所有这一切调整后),快速'傻'问题..因为你在netlib上使用生成器作为构建插件,你尝试先构建生成器插件,然后整个项目? –
我没有尝试,但我希望它会打破sonatype发布,不是吗?对不起,它没有工作......我处于开发的中间,所以可能处于不一致的状态。 – fommil