【发布时间】:2015-06-23 11:41:09
【问题描述】:
使用cmd按照命令运行java但出现错误
java -cp %etc_folder%%service%%library%
我确实为 etc_folder、服务、库设置了环境变量
library envi: target\service_service-05.2015.jar
我检查文件夹 jar 文件是否在文件夹中。
出现以下错误:
Exception in thread "main" java.lang.NoClassDefFoundError: target\service_service-05/2015/jar;
caused by: java.lang.ClassNotFoundException: target\service_service-05.2015.jar;
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
我认为它正在取代“。”到“/”
不知道为什么,有人可以帮忙吗? 提前致谢!!
【问题讨论】:
-
如果我没看错,您正在执行 java -cp target\service_service-05.2015.jar?如果是这样,它将不起作用。 (1) jar 使用 'java -jar' (2) 'java -jar' 与 'java -cp' 互斥,即没有 -cp 与 jars (3) jars 内部清单应该说明主入口点,它将使用 -jar 开关时执行
-
你能“echo %etc_folder%%service%%library%”来验证这个值吗?我认为有一个空间,所以 java 认为“target\service_service-05/2015/jar”是一个主类。
-
哦,我明白了,你认为这不是他的全部执行命令。如果他用扩展的 vars 显示整个执行命令会很好
-
抱歉,这超出了“echo %etc_folder%%service%%library%”-->“etc”;“target/service_service-05.2015.jar;”“com.xml。 XML etc/xml_file.xml"
-
我也得到了同样的东西与'库:etc/xml_file/xml'