2017-02-08 4 views
0

mainクラスを実行するためにgradleapplicationプラグインを使用しています。 私はこのアプリケーションでjvm引数を取得します。

gradle run -Dparameter=5 

好きですし、それがnullを返し

public static void main(String[] args) { 
    System.getProperty("parameter") 
} 

main関数内でその引数parameterを取得しよう。

jvm引数を正しく渡すには?

答えて

3

applicationDefaultJvmArgs=["-Dparameter=5"] 

追加することができますgradle -DオプションがGradleのプロセス自体はなく、実行するタスクのシステムプロパティのシステムプロパティを設定します。

代わり-P(プロジェクトのプロパティ)オプションを使用することができますが、あなたはあなたのGradleスクリプトでプロパティ値を取得し、accrodinglyシステムプロパティを設定する必要があります。

if (project.hasProperty('myPropertyNameHere')) 
    systemProperty('myPropertyNameHere', myPropertyNameHere) 
+0

確かにああ。私は別のプロセスを忘れてしまった – lapots

2

アプリケーションがJVMの設定やシステムプロパティの特定のセットが必要な場合は、applicationDefaultJvmArgsプロパティを設定することができます。これらのJVM引数は、実行タスクに適用され、配布の生成された開始スクリプトでも考慮されます。

Chapter 52. The Application Plugin

例えば あなたがbuild.gradle

関連する問題