Tôi có tập tin thực thi, tên run.bat mà inlcudes đoạn mã sau:Vấn đề thực hiện một tập tin thực thi trong một ứng dụng Java
@echo off
REM bat windows script
set CXF_HOME=.\lib\apache-cxf-2.2.7
java -Djava.util.logging.config.file=%CXF_HOME%\logging.properties -jar archiveServer-0.1.jar
Khi tôi thực hiện tập tin này trên một dòng lệnh nó hoạt động hoàn hảo. Tuy nhiên khi tôi cố gắng thực hiện trong một file java với tuyên bố sau đây:
File path = new File("C:/Documents and Settings/Zatko/My Documents/Project-workspace/IUG/external/application/archive");
Runtime.getRuntime().exec(new String[]{"cmd.exe", "/C", "start", "run.bat"}, new String[]{}, path);
tôi nhận được lỗi sau trong cửa sổ terminal:
'java' is not recognized as internal or external command, operable program or batch file.
Trong trường hợp lỗi có thể được?
bạn làm như thế nào? – Anto
Giá trị C: \ Program Files \ Java \ jdk1.6.0_18 \ bin; được bao gồm trong biến PATH – Anto
Hãy thử thêm C: \ Program Files \ Java \ jdk1.6.0_18 \ bin trước java trong tập tin thực thi của bạn. Một cách sạch hơn có thể là sử dụng Runtime.getRuntime(). Exec() với hai tham số cho môi trường được chỉ định. – stacker