当每次更改提交给我们的svn时,hudson会使用-amd -pl
标志启动maven构建,以仅生成已更改的项目。但是,它编译“a”的项目依赖于另一个项目“b”,并且在整个网络中的maven存储库中查找“b”时失败。半小时后,它会完整构建并成功......
也许我们设置了maven依赖项是错误的?我们有几个项目a,b,c和一个只有pom.xml的“maven-parent”项目:
<project>
<artifactId>maven-parent</artifactId>
<packaging>pom</packaging>
<modules>
<module>../a</module>
<module>../b</module>
<module>../c</module>
</modules>
</project>
和“a”项目引用“b”如下:
<project>
<artifactId>a</artifactId>
<packaging>jar</packaging>
...
<dependency>
<groupId>com.pursway</groupId>
<artifactId>plummet</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</project>
谢谢!
答案 0 :(得分:0)
也许您应该尝试-am -pl
。来自mvn --help
-am,--also-make If project list is specified, also
build projects required by the
list
-amd,--also-make-dependents If project list is specified, also
build projects that depend on
projects on the list
答案 1 :(得分:0)
将每个项目设置为Hudson中的一个单独项目,并使用Hudson配置为下游相关项目构建根据scm更改所需的任何内容。
答案 2 :(得分:0)
您可以指定Raguram在hudson项目配置中指出的内容。在构建下 选项,您可以指定Maven目标和选项。
见下图