classpath
参数export CLASSPATH="/path-jar-files-are-at/*"
javac MyApp.java
java MyApp
Exception in thread "main" java.lang.NoClassDefFoundError: MyApp
Caused by: java.lang.ClassNotFoundException: MyApp
javac -classpath /path-jar-files-are-at/* MyApp.java
java -classpath /path-jar-files-are-at/* MyApp
有什么想法吗?
答案 0 :(得分:0)
CLASSPATH不应包含尾随的“/ *” - 这不会给你一个有效的类路径。 shell正在扩展/ *并用空格/换行符分隔列表 - 而不是“:”字符。
如果您仍然希望它以这种(动态)方式工作,请尝试以下方法:
export CP=`ls /path-jar-files-are-at/*`; CP=`echo $CP | sed 's/\.jar\s/.jar:/g'`; CP="$CP:/path-jar-files-are-at"