2017-05-22 1 views
1

現在、STSを使用してSpringブートでアプリケーションを作成しています。春ブーツ アプリケーションとしてSTS内でローカルにアプリケーションを実行しているVMの引数を設定してMavenプロファイルを有効にする

  1. は今、私は別の私がある場合にはフィルタリングしたい依存関係を持っています。サーバー

に展開するためのアーティファクトを構築

  • 私はこのようなのpom.xml内のプロファイルとの依存関係を分割:

    <profiles> 
        <profile> 
        <id>local</id> 
        <activation> 
         <activateByDefault>false</activateByDefault> 
        </activation> 
        <dependencies ... 
        </profile> 
    
        <profile> 
        <id>server</id> 
        <activation> 
         <activateByDefault>true</activateByDefault> 
        </activation> 
        <dependencies ... 
    </profile> 
    

    を私の質問は、私は地元を活性化させることができる方法であります私はローカルの春のブートアプリケーションを起動すると、vmの引数として実行コンフィギュレーションのプロファイル? activateByDefault trueが他のプロファイルに設定されているため、ローカルスタートの一部の依存関係が除外されているため、アプリケーションを起動できません。

    編集:アプリの起動設定でプロファイルを変更したいと思います。私は-Pフラグを使うことができないので、mavenビルドはありません。

    <activation> 
        <property> 
        <name>act</name> 
        <value>local</value> 
        </property> 
    </activation> 
    

    を追加し、動作しない= -DactローカルVM引数で始まります。

    run configuration

  • +1

    '-Dspring.pofiles.active = ' – pvpkiran

    +0

    私は春のプロファイルではなく、mavenのプロファイルを使いたいと思っています。 – dokukaefer

    答えて

    3

    あなたは、実行時に(pom.xmlで表現される)別のビルドプロファイルをアクティブにすることはできません。アプリケーションを実行する前に、アプリケーションが実行される前に構築されているため、アプリケーションが遅すぎます。

    つまり、mavenプロファイルを使用して異なるビルドを作成することができます。

    Springプロファイルを使用して、アプリケーションの実行時の動作@pvpkiranを変更できます。

    +0

    よろしくお願いいたします。ええ、確かにspring.profilesは回避策です:( – dokukaefer

    関連する問題