是否有任何项目布局满足mavens发布插件?

时间:2011-12-01 17:38:44

标签: java maven maven-2 maven-release-plugin

我有一个多模块项目,无法执行发布。

我尝试了这些布局:

svnroot/trunk/parent
              /module1
              /module2

svnroot/parent/trunk
svnroot/module1/trunk
svnroot/module2/trunk

阅读后

我希望第一个布局能够正常工作,但在两种情况下,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下结帐,似乎插件期望模块在目标下检出。

  • 我错过了一个重要的设置吗?

  • 有谁可以描述他是如何让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

2 个答案:

答案 0 :(得分:2)

我的结构是

/svnroot/trunk/parent
/svnroot/trunk/parent/module1
/svnroot/trunk/parent/module2

等。我在构建或使用发布插件时没有遇到任何麻烦。我目前在3.0.3上,但我认为它在2.2.x上工作。在任何情况下,它都与您在问题中列出的任何结构都不匹配,可能值得一试。

答案 1 :(得分:-2)

编辑:正如我在下面提到的,这是一个Eclipse插件的问题 - 抱歉混淆

如果我没记错的话,从Maven 2.2开始,多模块项目设置停止受到支持。由于其他原因,我们将产品升级到Maven 2.2,并发现之前无问题的多模块项目已停止正确构建。