2011-01-11 7 views
2

プロファイルが異なる環境用に設定されたMavenビルド(例えば、prodとdevのように、異なるDB設定やそのようなものを定義するなど)をインストールした場合、 'install'私のレポにどの環境がインストールされているのかわからないので、私はちょうどcom.example.myproject:myapp:0.0.1を持っています。Mavenプロファイルとインストール

私は何か誤解したのですか、他の目標に使用するプロファイルですか?

答えて

9

まあ、classifier属性を使用すると、各プロファイルがクラシファイア、つまり各環境に固有のjarを持つjarファイルを作成できるようになります。これを説明するためのコードスニペットがあります。 devプロファイル(mvn -P dev install)を実行すると、それはmyapp-dev-0.0.1.jar

<project> 
... 
    <properties> 
     <env></env> 
    </properties> 
... 

    <build> 
     <plugins> 
      ... 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-jar-plugin</artifactId> 
       <configuration> 
        <classifier>${env}</classifier> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 


    <profiles> 
     ... 
     <profile> 
      <id>dev</id> 
      <properties> 
       <env>dev</env> 
      </properties> 
      ... 
     </profile> 
    </profiles> 

</project> 
0

通常のmvnコマンドを実行し、適切なプロファイルを-P http://maven.apache.org/guides/introduction/introduction-to-profiles.htmlで選択できます。これは、選択したプロファイル、リポジトリにインストールされるものによって異なります。

+0

のように、-dev分類器とのjarファイルを作成しますうん、それが問題だ - バージョンは限りクライアントが懸念しているとして、そこに目に見えないカスタマイズとしてあります。より多くのドキュメントを見てみると、それを見ている 'クラシファイア'のプロパティを示唆しています... – Brabster

関連する問題