【发布时间】:2018-04-12 09:45:48
【问题描述】:
我正在使用来自this 问题的代码和编译命令(刚刚用测试替换了 DBConnect)。然后我使用java -classpath ojdbc14.jar Test,我得到:
Error: Could not find or load main class Test。
同样适用于:
java -classpath "ojdbc14.jar;." Test 和 java -classpath "ojdbc14.jar;./Test.class" Test
当我只使用java Test 时,错误是
Exception in thread "main" java.lang.NoClassDefFoundError: oracle/jdbc/driver/OracleDriver
at Test.main(Test.java:7)
Caused by: java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:338)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 1 more
【问题讨论】:
-
为什么有
.? -
@KaustubhKhare 因为使用
-cp标志会覆盖当前目录的默认值,所以我在其中添加了它 -
在 linux 上,您需要使用
:分隔类路径条目,而不是;,并且您不需要用引号括起来 -
@MarkRotteveel,谢谢,我不知道我是怎么错过的。问题解决了