2016-10-03 15 views
0

私の質問は...私は現在プロジェクトの依存関係のバージョンの一部として現在ブランチ名を使用していますか?依存関係のバージョンのpom.xmlにGitブランチ名を変数として持つ方法

ここから始めるのは、私が持っているものです。

私は3つの枝を持っています。マスター、アルファとベータ

これらの下には、automation-jar.jarという共通の依存関係があります。このJARファイルを依存関係として使用する2つのクライアントプロジェクトもあります。

例: オートメーションのjar pom.xmlファイル

<groupId>com.example.jarfile</groupID> 
<artifactId>example-jar</artifactId> 
<version>${branch.name}-SNAPSHOT</version> 

例:クライアントプロジェクト1 - のpom.xml(依存性として自動-jarファイルを使用します)

<dependency> 
    <groupId>com.example.jarfile</groupID> 
    <artifactId>example-jar</artifactId> 
    <version>${branch.name}-SNAPSHOT</version> 
</dependency> 

私が展開することができますjarファイルを指定した "branch.name"という問題はありません....私の問題は、バージョンスナップショットをGitでマージ競合が発生しない場所にするにはどうしたらよいですか?

たとえば、<version>master-SNAPSHOTまたはAlpha-SNAPSHOTにハードコードすると、ブランチをマージする際に競合が発生します。

アイデア?

ありがとうございます!

答えて

2

は次にあなたがbranchName

http://www.mojohaus.org/buildnumber-maven-plugin/usage.html

<dependency> 
    <groupId>com.example.jarfile</groupID> 
    <artifactId>example-jar</artifactId> 
    <version>${scmBranch}-SNAPSHOT</version> 
</dependency> 
のために$ {scmBranch}を使用することができ、以下のプラグイン

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.codehaus.mojo</groupId> 
      <artifactId>buildnumber-maven-plugin</artifactId> 
      <version>1.4</version> 
      <executions> 
       <execution> 
        <phase>validate</phase> 
        <goals> 
         <goal>create</goal> 
        </goals> 
       </execution> 
      </executions> 
     </plugin> 
</build> 

を含めるようにしてください