tôi sử dụng mã này trong chương trình của tôi để tải tập tin một thuộc tính:jar thực thi sẽ không tìm thấy các thuộc tính tập tin
Properties properties = new Properties();
URL url = new App().getClass().getResource(PROPERTIES_FILE);
properties.load(url.openStream());
Mã này chạy tốt trong Eclipse. Sau đó, tôi gói chương trình vào một JAR có tên MyProgram.jar, và chạy nó, tôi nhận được một NullPointerException ở dòng thứ hai. JAR không chứa tệp thuộc tính, cả hai đều nằm trong cùng một thư mục. Tôi đang sử dụng Maven để tạo ra JAR. Làm cách nào để khắc phục sự cố này?
CẬP NHẬT: Tôi không muốn thêm tệp thuộc tính vào JAR, vì nó sẽ được tạo tại thời điểm triển khai.
Lưu ý phụ: Có lý do nào bạn đang sử dụng 'getResource()' thay vì 'getResourceAsStream()', vì bạn chỉ sử dụng nó làm luồng? – Powerlord
Không, tôi không có lý do cụ thể nào. –
Làm thế nào để bạn chạy bình của bạn? Nếu thông qua java -jar, bạn có thể thử java -cp ./MyProgram.jar và xem nó có hoạt động không? –