我有一个maven项目 - 它是jenkins的插件。它的父母应该是:Maven:根据配置文件选择父项目
<parent>
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>plugin</artifactId>
<version>1.414</version>
</parent>
但同时这个插件也可以用于哈德森,而不会改变任何代码行。但对于它的父项目应该是:
<parent>
<groupId>org.jvnet.hudson.plugins</groupId>
<artifactId>hudson-plugin-parent</artifactId>
<version>2.0.1</version>
</parent>
我可以指定2个不同的配置文件为,并使用它们来构建插件相应詹金斯或哈德森?所以,我呼吁类似的东西:
mvn package -P jenkins
或
mvn package -P hudson
我试图在配置文件中指定的属性,但这些不是由<parent>
标签内的值替换。那么是否还有其他可能性为两者构建插件,但是尽可能使用通用代码和文件?
添加:所以,如果我不能这样做,那么我该怎么做呢?如何重构?新结构应该是什么?
谢谢,我会试试看。但是这样我必须得到我的代码的两个副本:在plugin-jenkins和plugin-hudson中。它能以某种方式做到这一点,我建立基于詹金斯代码哈德森或反之亦然? –
那么,我真的会建议你有两个单独的项目来包装这个(至少)。正如Karl-Heinz在下面指出的那样,Hudson和Jenkins已经分道扬it,很可能现在(仍然)工作的东西在不久的将来将无法工作。 您可以将大部分代码保留在核心模块中,然后在包装模块(取决于核心)中使用Hudson或Jenkins特定的东西。 沿着这些线应该解决你的问题。 – carlspring