好的伙计感谢您尝试调试我。使用bat运行java脚本,“java不被识别为内部命令或外部命令”
我有一个Java脚本,我通常用这个CMD
javac -classpath jxl.jar;..C:\3DWIP\src\; GenerateExcel.java
然后我用这个CMD运行编译。
java -classpath jxl.jar;..C:\3DWIP\src\; GenerateExcel Model.STEPFILE
jxl.jar作为JExcelApi的写入Excel文件和C:\ 3DWIP的\ src \是我的主要()将文件夹。
这个效果很好。
我的问题是,我有一个蝙蝠脚本,在某些时候应该调用javac和java,例如当它调用下面的行 java -classpath jxl.jar; .. C:\ 3DWIP \ SRC \; GenerateExcel Model.STEPFILE
我得到着名的“java不被识别为内部命令或外部命令”。
这是我的系统路径变量
C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Java\jdk1.7.0_67\bin;C:\3DWIP\src;C:\Program Files\Java\jdk1.7.0_67\lib\jexcelapi\jxl.jar;%JAVA_HOME%\bin
这是我的蝙蝠脚本
@echo off
set INPUTFILENAME=%~1
set INPUTFILENAME=%INPUTFILENAME:C:\GENERATOR\=%
set CTWORKFLD=C:\GENERATOR\
set CTINSTDIR=C:\coretechnologie2014\evolution64
set CTSCRIPTFLD=C:\coretechnologie2014\evolution64\scripts
set CTLIBPATH=C:\coretechnologie2014\evolution64\lib64
set EVOLPATH=%CTINSTDIR%
set path=C:\Program Files\Java\jdk1.7.00_67\bin;%EVOLPATH%;%CTLIBPATH%;%CTLIBPATH%\lib3dx\intel_a\code\bin;%UGII_ROOT_DIR%;
rmdir %CTWORKFLD%\out /s /q
mkdir %CTWORKFLD%\out
echo Processing file: %INPUTFILENAME%
echo Exporting Images and Data
"%CTINSTDIR%\evolution.exe" -batch "%CTSCRIPTFLD%\Compute_Properties_and_views.scp" "%CTWORKFLD%\%INPUTFILENAME%" Evolution Step "%CTWORKFLD%\out\%INPUTFILENAME%" "%CTWORKFLD%\out\%INPUTFILENAME%.stp.log"
echo Exporting Done!
echo Generating Excel File
chdir /d C:\3DWIP\src
::javac -classpath C:\Program Files\Java\jdk1.7.0_67\bin;..jxl.jar;..C:\3DWIP\src\; GenerateExcel.java
java -classpath C:\Program Files\Java\jdk1.7.0_67\bin;..jxl.jar;..C:\3DWIP\src\; GenerateExcel %INPUTFILENAME%
echo Closing 1000 secs...
"%windir%\system32\timeout.exe" /t 1000 /nobreak
echo Job Done!
@echo
@echo
请帮助我duno该怎么办了。
您是否设置了%JAVA_HOME%?如果是,你检查过了吗? – 2014-11-03 20:42:03
该消息表示Windows无法找到'java.exe'。你的'.bat'脚本改变了'PATH'。显然'java.exe'不存在于该路径上的任何目录中,但确实存在于之前使用的'PATH'中的某个目录中。如果'java.exe'确实存在于新PATH中的某个目录中,请澄清。 – ajb 2014-11-03 20:46:13
尝试使用'C:\ Program Files(x86)\ Java \ jdk _ * \ bin \ java.exe args',直接引用java.exe路径或包含jre。 – TameHog 2014-11-03 20:51:51