Tworzyłem prostą klasę Java i chciałbym stworzyć out-of-the-box launcher przy użyciu gradle.Jak przekazywać argumenty wiersza polecenia do głównej klasy w gradle?
Więc chcę móc uruchomić program Java poprzez Gradle:
gradlew clean run These are my command line arguments
gdzie These are my command line arguments
są przekazywane bezpośrednio do mojego sposobu public static void main(String... args)
.
Używam apply plugin: "application"
, która daje mi zadanie run
. Ale kiedy używam tego „jak jest” Mam:
* What went wrong: Task 'These' not found in root project 'question1'. Some candidates are: 'test'.
To podejście działa, ale problem polega na tym, że argumenty * zawsze * muszą być obecne. Jeśli zrobisz cokolwiek innego (np. 'Gradle tasks') operacja kończy się niepowodzeniem z' NullPointerException' i błędem wskazującym na powyższą linię 'args' w' build.gradle'. Czy znasz sposób, aby tego uniknąć? –
I odpowiedzieć na moje własne pytanie: 'if (project.hasProperty ('runArgs') {args findProperty ('runArgs')}' zrobi to. –