私は単純なJavaクラスを作成しています。私はgradleを使用して、すぐに使用できるランチャーを作成したいと考えています。gradleのメインクラスにコマンドライン引数を渡すには?
だから私は、Gradleのを経由してJavaプログラムを実行することができるようにしたい:These are my command line arguments
が私のpublic static void main(String... args)
メソッドに直接渡され
gradlew clean run These are my command line arguments
。
私はrun
タスクを与えるapply plugin: "application"
を使用しています。しかし、私が持っている「されたとして」私はこれを実行しているとき:
* What went wrong: Task 'These' not found in root project 'question1'. Some candidates are: 'test'.
この手法は機能しますが、問題はargs *が常に存在する必要があることです。他に何か(例えば 'gradle tasks'など)を行うと、操作は' NullPointerException'で失敗し、 'build.gradle'の上記の' args'行を指すエラーが発生します。あなたはそれを避ける方法を知っていますか? –
そして、私自身の質問に答えるために: 'if(project.hasProperty( 'runArgs'){args findProperty( 'runArgs')}'はそれを行います。 –