【发布时间】:2011-12-01 17:38:44
【问题描述】:
我有一个多模块项目,无法执行发布。
我尝试了这些布局:
svnroot/trunk/parent
/module1
/module2
和
svnroot/parent/trunk
svnroot/module1/trunk
svnroot/module2/trunk
看完
- http://ericmiles.wordpress.com/tag/flat-structure/ 和
- http://ericmiles.wordpress.com/tag/release-plugin/
我希望第一个布局可以工作,但在这两种情况下,maven 都会以这个错误终止:
[INFO] ------------------------------------------------------------------------
[ERROR] FATAL ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Error building POM (may not be this project's POM).
Project ID: unknown
Reason: Could not find the model file 'C:\myworkspace\parent\target\module1'. for project unknown
[INFO] ------------------------------------------------------------------------
出现此错误时似乎已经完成了一些工作,所有版本号都在 poms 中更新。
我认为父模块是在 parent\target\checkout 下签出的,并且插件似乎希望模块在 target 下签出。
我错过了一个重要的设置吗?
谁能描述一下他是如何让 mvn 发布的?
parent.pom 有以下设置
<groupId>company.project</groupId>
<artifactId>parent</artifactId>
<version>1.0.9-SNAPSHOT</version>
<packaging>pom</packaging>
<modules>
<module>../module1</module>
<module>../module2</module>
</modules>
<scm>
<connection>scm:svn:file:///SVNROOT/trunk/parent</connection>
<url>file:///SVNROOT/trunk/parent</url>
</scm>
<dependency>
<groupId>company.project</groupId>
<artifactId>module1</artifactId>
<version>1.0.9-SNAPSHOT</version>
</dependency>
模块 pom 看起来像这样
<parent>
<artifactId>parent</artifactId>
<groupId>company.project</groupId>
<version>1.0.9-SNAPSHOT</version>
</parent>
<name>module1</name>
<artifactId>module1</artifactId>
<scm>
<connection>scm:svn:file:///SVNROOT/trunk/module1</connection>
<url>file:///SVNROOT/trunk/module1</url>
</scm>
释放被调用
mvn -e -DcommitByProject=true -DautoVersionSubmodules=true -Dresume=false release:prepare release:perform
Maven 版本是 2.2.1
【问题讨论】:
标签: java maven maven-2 maven-release-plugin