[英]Error while running jar from .bat file
从.bat file
调用jar
,出现UnSupportedClassVersionNumber
异常。
set LIBRARY_PATH=D:\endecabatch\JAR
echo %LIBRARY_PATH%
set JAVA_HOME=C:\Java\jdk1.5.0_14
set PATH=%JAVA_HOME%\bin;%JAVA_HOME%\lib
set CLASSPATH=%PATH%
set CLASSPATH=%CLASSPATH%;%LIBRARY_PATH%\sqljdbc.jar
set CLASSPATH=%CLASSPATH%;%LIBRARY_PATH%\log4j-1.2.16.jar
set CLASSPATH=%CLASSPATH%;%LIBRARY_PATH%\auditlog_1.0.jar
set CLASSPATH=%CLASSPATH%;%LIBRARY_PATH%\jdbc_1.0.jar
set CLASSPATH=%CLASSPATH%;%LIBRARY_PATH%\EndecaBatch.jar
java -classpath %CLASSPATH% com.heb.endeca.batch.BatchManager "D:\endecabatch\" "properties\LOCAL\" "FULL" "ALL"
从蚀我出口了那个瓶子。 我将jre to 1.5.0_14
更改jre to 1.5.0_14
并将编译器版本更改为1.5
,然后导出了jar
。 仍然显示相同的错误。 请帮忙。
这是我得到的Exception
D:\endecabatch>echo D:\endecabatch\JAR
D:\endecabatch\JAR
D:\endecabatch>set JAVA_HOME=C:\Java\jdk1.5.0_14
D:\endecabatch>set PATH=C:\Java\jdk1.5.0_14\bin;C:\Java\jdk1.5.0_14\lib
D:\endecabatch>set CLASSPATH=C:\Java\jdk1.5.0_14\bin;C:\Java\jdk1.5.0_14\lib
D:\endecabatch>set CLASSPATH=C:\Java\jdk1.5.0_14\bin;C:\Java\jdk1.5.0_14\lib;D:\endecabatch\JAR\sqljdbc.jar
D:\endecabatch>set CLASSPATH=C:\Java\jdk1.5.0_14\bin;C:\Java\jdk1.5.0_14\lib;D:\endecabatch\JAR\sqljdbc.jar;D:\endecabatch\JAR\log4j-1.2.16.jar
D:\endecabatch>set CLASSPATH=C:\Java\jdk1.5.0_14\bin;C:\Java\jdk1.5.0_14\lib;D:\endecabatch\JAR\sqljdbc.jar;D:\endecabatch\JAR\log4j-1.2.16.jar;D:\endecabatch\JAR\auditlog_1.0.jar
D:\endecabatch>set CLASSPATH=C:\Java\jdk1.5.0_14\bin;C:\Java\jdk1.5.0_14\lib;D:\endecabatch\JAR\sqljdbc.jar;D:\endecabatch\JAR\log4j-1.2.16.jar;D:\endecabatch\JAR\auditlog_1.0.jar;D:\endecabatch\JAR\jdbc_1.0.jar
D:\endecabatch>set CLASSPATH=C:\Java\jdk1.5.0_14\bin;C:\Java\jdk1.5.0_14\lib;D:\endecabatch\JAR\sqljdbc.jar;D:\endecabatch\JAR\log4j-1.2.16.jar;D:\endecabatch\JAR\auditlog_1.0.jar;D:\endecabatch\JAR\jdbc_1.0.jar;D:\endecabatch\JAR\EndecaBatch.jar
D:\endecabatch>java -classpath C:\Java\jdk1.5.0_14\bin;C:\Java\jdk1.5.0_14\lib;D:\endecabatch\JAR\sqljdbc.jar;D:\endecabatch\JAR\log4j-1.2.16.jar;D:\endecabatch\JAR\auditlog_1.0.jar;D:\endecabatch\JAR\jdbc_1.0.jar;D:\endecabatch\JAR\EndecaBatch.jar com.heb.endeca.batch.BatchManager "D:\endecabatch\" "properties\LOCAL\" "FULL" "ALL"
Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
实际上,我在生成jar时犯了一个错误。 我在buildPath -> ConfigureBuildPath -> compiler
windows-> Preferences
更改了编译器版本,而不是在buildPath -> ConfigureBuildPath -> compiler
中更改了它
现在,我可以从批处理文件正确运行我的Java应用程序了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.