我有一个git repo,其中顶级目录中有三个目录:java,COM和csharp。正如您可能猜到的那样,pom.xml存在于java目录中。
一切顺利,直到我去运行发布插件。它将整个仓库克隆到目标/结账,然后期望pom位于顶部。事实并非如此。故事结束。
我可以告诉发布插件有关额外目录的信息,还是我必须拆分repro?
答案 0 :(得分:19)
经过测试:将以下内容添加到build / plugins部分:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.2.1</version>
<executions>
<execution>
<id>default</id>
<goals>
<goal>perform</goal>
</goals>
<configuration>
<pomFileName>subdir/pom.xml</pomFileName>
</configuration>
</execution>
</executions>
</plugin>
其中“subdir”是pom.xml所在目录的相对路径。
这至少与Maven 3.0.3有关。可以使用不同版本的插件版本,但这是未经测试的。
这适用于Maven 3.0.4和maven-release-plugin 2.5和git 1.8.x。
答案 1 :(得分:2)
使用maven-release-plugin版本2.4(同时使用maven 3.0.3和3.0.4),Perfoming版本未在非根目录中正确部署。降级为maven-release-plugin 2.2.1版解决了这个问题。