【问题标题】:Runtime execution (JAR) cannot locate Java CLASSPATH and Connector J运行时执行 (JAR) 找不到 Java CLASSPATH 和连接器 J
【发布时间】:2025-11-29 23:55:01
【问题描述】:

在此之前,我的应用程序一直在编译和执行。我只是使用

进行编译

jar cvmf mainClass.txt starcoder.jar .class images/.gif images/*.jpg *.bat

我有一个

**Windows 7 操作系统, Java JDK jdk1.7.0_05,
JRE JRE7, 连接器 J mysql-connector-java-3.1.14-bin, 使用 TextPad 进行开发,

运行时位于 C:/Program Files/Java 和 Java_home**

这个来自 TextPad 的应用程序,它与 CLASSPATH 一起运行良好并且执行良好。 系统编译正常,但我的 JAR 文件执行失败

问题:在运行时找不到我的 CLASSPATH(在编译时完美运行)给我这个错误

c:\Program Files (x86)\Java\jdk1.7.0_05\bin>java -jar starcoder.jar ClassNotFoundException:com.mysql.jdbc.Driver SQLException:否 为 jdbc 找到合适的驱动程序:mysql://localhost/starinv?user=r oot 线程“主”java.lang.NoClassDefFoundError 中的异常: javax/邮件/消息异常 在serialz.(serialz.java:96) 在 serialz.main(serialz.java:240) 引起:java.lang.ClassNotFoundException:javax.mail.MessagingException 在 java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinCla ssLoader.java:583) 在 java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(C lassLoaders.java:178) 在 java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) ... 2 更多

类路径

.;C:\Program Files (x86)\Java\jre7\lib\ext\comm.jar;.;C:\Program Files (x86)\Java\jre7\lib\ext\mysql-connector-java-3.1.14-bin.jar;.;C:\Program 文件 (x86)\Java\jre7\lib\ext\jxl.jar;.;C:\Program Files (x86)\Java\jre7\lib\ext\mailapi.jar;.;C:\Program Files (x86)\Java\jre7\lib\ext\mail.jar;.;C:\Program Files (x86)\Java\jre7\lib\ext\activation.jar;.;C:\Program Files (x86)\Java\jre7\lib

我的连接器 J 文件位于正确的位置,但在执行 JAR 文件时出现错误。

我需要帮助来解决这个问题。 我的开发环境和运行时环境都是一样的。

【问题讨论】:

  • 您是否尝试过使用 -cp 开关将您需要的 jar 添加到您的 java 调用中?
  • 请举个例子。
  • 刚刚做了包含示例的答案

标签: java jar classpath connector


【解决方案1】:

尝试这样调用:

java -cp .;"C:\Program Files (x86)\Java\jre7\lib\ext\comm.jar";"C:\Program Files (x86)\Java\jre7\lib\ext\mysql-connector-java-3.1.14-bin.jar";"C:\Program Files (x86)\Java\jre7\lib\ext\jxl.jar";"C:\Program Files (x86)\Java\jre7\lib\ext\mailapi.jar";"C:\Program Files (x86)\Java\jre7\lib\ext\mail.jar";"C:\Program Files (x86)\Java\jre7\lib\ext\activation.jar";"C:\Program Files (x86)\Java\jre7\lib" -jar starcoder.jar

请注意,我删除了您的类路径中多余的“。”条目并引用每个路径。

【讨论】:

    最近更新 更多