如何使用主要版本创建不同的Maven项目?

时间:2015-02-25 22:46:10

标签: java maven svn

我们有当前发布的1.0.0 maven项目,并且我们希望同时处理2.0.0 maven项目,我们希望从头开始重写代码。我们是否应该将版本2.0.0创建为新的maven项目,如果我们创建新项目,它将在eclipse中失败,因为工件名称冲突。您能否建议我们如何创建2.0.0版本并更新到SVN?

以下是我们定义当前项目的方式

<project >  
<modelVersion>4.0.0</modelVersion>
    <groupId>org.test.demo</groupId>
    <artifactId>demo-rest</artifactId>
    <version>1.0.0-SNAPSHOT</version>
    <packaging>war</packaging>
    <name>demo-rest</name>
    <repositories>
    ....
    </repositories>
    <properties>
       ...
    </properties>    
     <dependencies>
     ....
     </dependencies> 

</project>

1 个答案:

答案 0 :(得分:0)

标准方法是在引入新版本时使用单独的分支,并且还支持旧版本。

由于您要完成重写,因此您无法将代码合并到新版本分支中。

但是你是对的,你不能在同一个Eclipse工作区中使用具有相同工件名称的两个项目。 您有两种选择:

  • 开发人员将在项目之间切换工作区(如果你不希望他们从旧项目中复制代码片段,这是有意义的)
  • 您将重命名项目的新版本(如果完全重写,这也很有意义)

回复评论中的问题:

如果您需要在新版本旁边维护旧版本,则需要在整个团队中创建规则,以便将每个修复/增强功能从1.0.0分支合并到2.0.0分支(如果适用)。使用此方法,您将获得最新版本中的所有修复和增强功能。有些工具可以帮助跟踪合并的修复程序(例如TortoiseSVN merge feature)。您可以通过这种方式维护更多分支。但规则是,旧分支的每次更改都需要合并到所有新分支中。 当然,工件的名称仍然存在,开发人员需要切换工作区或rebase分支。