Thông tin thêm về Windows ... biến java.home không phải lúc nào cũng có cùng vị trí với tệp nhị phân được chạy.
Như Denis The Menace nói, trình cài đặt đặt các tệp Java vào Tệp chương trình , nhưng cũng java.exe vào System32 . Không có gì liên quan đến Java trên đường dẫn java -version vẫn có thể hoạt động. Tuy nhiên, khi chương trình của PeterMmm được chạy, nó báo cáo giá trị của Tệp chương trình là java.home , điều này không sai (Java được cài đặt ở đó) nhưng thực tế nhị phân đang được chạy nằm trong System32 .
Một cách để tìm vị trí của tệp nhị phân java.exe , thêm dòng sau vào mã của PeterMmm để giữ cho chương trình chạy lâu hơn:
try{Thread.sleep(60000);}catch(Exception e) {}
Biên dịch và chạy nó, sau đó tìm kiếm vị trí của hình ảnh java.exe . Ví dụ: trong Windows 7 mở trình quản lý tác vụ, tìm mục java.exe , nhấp chuột phải và chọn 'vị trí tệp mở', điều này sẽ mở vị trí chính xác của tệp nhị phân Java. Trong trường hợp này, nó sẽ là System32 .