【问题标题】:Could not find or load main class when trying to use ojdbc [duplicate]尝试使用 ojdbc 时找不到或加载主类 [重复]
【发布时间】: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;." Testjava -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,谢谢,我不知道我是怎么错过的。问题解决了

标签: java linux


【解决方案1】:

尝试这样做,

先设置类路径,再编译运行程序。

classpath=%classpath%;ojdbc14.jar(path for your OJDBC jar);
javac Test.java
java Test

【讨论】:

    猜你喜欢
    • 2020-09-21
    • 1970-01-01
    • 2016-05-17
    • 2017-07-08
    • 1970-01-01
    • 2015-04-27
    • 2013-01-17
    • 2016-12-17
    • 2018-11-02
    相关资源
    最近更新 更多