Tôi đang tạo lớp Java đơn giản và tôi muốn tạo trình khởi chạy ngoài hộp bằng cách sử dụng chế độ gradle.Làm thế nào để chuyển đối số dòng lệnh đến lớp chính trong gradle?
Vì vậy, tôi muốn để có thể chạy chương trình Java qua gradle:
gradlew clean run These are my command line arguments
nơi These are my command line arguments
được truyền trực tiếp đến phương pháp public static void main(String... args)
tôi.
Tôi đang sử dụng apply plugin: "application"
cho tôi nhiệm vụ run
. Nhưng khi tôi chạy này 'như là' Tôi đã có:
* What went wrong: Task 'These' not found in root project 'question1'. Some candidates are: 'test'.
Cách tiếp cận này hoạt động, nhưng vấn đề nó có là các args * luôn luôn * phải có mặt. Nếu bạn làm bất cứ điều gì khác (ví dụ 'nhiệm vụ gradle') hoạt động không thành công với một' NullPointerException' và lỗi trỏ đến dòng 'args' ở trên trong' build.gradle'. Bạn có biết cách để tránh điều đó không? –
Và để trả lời câu hỏi của riêng tôi: 'if (project.hasProperty ('runArgs') {args findProperty ('runArgs')}' sẽ làm điều đó. –