2017-03-14 3 views
2

私はgroovyコードからgradleタスクを実行するためにツールAPIを使用しようとしています。次の作業:gradle tooling APIを使用しているときに、どのようにプロジェクトのプロパティをgradleに設定できますか?

ProjectConnection connection = GradleConnector.newConnector() 
      .forProjectDirectory(new File(System.properties.getProperty('user.dir'))) 
      .connect()  

connection.newBuild() 
      .forTasks('deploy') 
      .setStandardOutput(System.out) 
      .run() 

しかし、実行するタスクはプロジェクトのプロパティによって異なります。私は、コマンドラインから実行された場合たとえば、私はそれらのプロジェクト値を設定するには、ツーリングAPIを使用してどのように、私は

gradle -Penv=local deploy 

を把握することはできません使用すると思います。

あなたが行うことができます
+1

あなたは '.withArguments( 'ローカルPENV =')を追加することはできませんか? –

+0

私は恥ずかしい色です。私は投稿する前にそれを繰り返し試みましたが、タイプミスのため失敗しました。 あなたのコメントの後、私は戻って行を再入力し、突然動作を開始しました。 –

答えて

2

: - `` .forTasks`ラインの前に

connection.newBuild() 
      .withArguments('-Penv=local') 
      .forTasks('deploy') 
      .setStandardOutput(System.out) 
      .run() 
関連する問題