当前位置: 首页 > 面试题库 >

java.lang.ClassNotFoundException:执行JAR时com.mysql.jdbc.Driver

龚星洲
2023-03-14
问题内容

我正在尝试使用以下代码连接到本地MySQL服务器:

dbURL = "jdbc:mysql://localhost:3306:/" + dbname;
try{
    Class.forName("com.mysql.jdbc.Driver");
    try{
        con = DriverManager.getConnection(dbURL, dbuser, dbpass);
    } catch (SQLException ex){
        System.out.println("ERROR: Could not connection to SQL DB");
        con = null;
    }
} catch (ClassNotFoundException e){
    System.out.println("Error: ");
    e.printStackTrace();
}

然后我得到

java.lang.ClassNotFoundException:com.mysql.jdbc.Driver

我了解Java无法找到合适的驱动程序来将Java环境连接到MySQL数据库。该文件正在Windows 7系统上编译,并移植到Ubuntu 11.04系统上。

是否可以使用特定的类路径来运行Java程序,例如:

java -cp /usr/share/java/mysql-connector-java.jar program.jar

当我尝试时那没用。


问题答案:

如果是JAR,则忽略*-cp-classpath参数以及%CLASSPATH%环境变量。相反,必须在JAR自己文件的条目中指定类路径。它可以是相对于JAR本身的路径。例如,在同一文件夹或子文件夹中。

*Class-Path``/META-INF/MANIFEST.MF``/lib

以下示例假定驱动程序与JAR位于同一文件夹中。

Class-Path: mysql-connector-java.jar

(确保MANIFEST.MF文件末尾有空白行)



 类似资料:
  • null 这里出了什么问题。

  • 我在面向 Web 开发人员的 Eclipse Java EE IDE 中有一个专家项目。在运行 Tomcat 时,我收到一个类的错误,我可以看到我已经包含该类。 我的问题是-因为Tomcat Apache,我必须将这些JAR添加到其他位置吗? 错误: 严重:Servlet /Resource抛出load()异常java.lang.ClassNotFoundException:org.odata4j

  • 我在Eclipse中有一个maven项目。在src/main/resources下,我有一个名为“directoryToCopy”的目录,其中包含文件。一旦我运行了我的项目,我想将“directoryToCopy”复制到桌面上的本地目录“localDirec”下。 我用了这个: 这在本地工作正常,但是当我想将其作为可执行jar文件运行时,我会得到NullPointerException。 请问有什

  • 我在Netbeans IDE 8.0.1中编写了一个名为SampleChat的Java GUI程序,并使用“Clean and Build”函数创建了一个jar文件。 我转到Netbeans创建的'dist'目录,双击它生成的jar文件。打开一个cmd窗口,其行如下: 我打算从一个U盘共享程序,所以它是至关重要的,唯一的要求是一个JVM,鼠标,也许一些手指来双击它。 我想出的一个尴尬的解决方案是编

  • 我试图在包含GUI系统的JDK 11.0.2上运行我在Intellij中创建的一个可执行jar文件。我已经安装了Java8和java SDK11.0.2。每当我双击jar文件时,我希望主gui登录屏幕出现,但什么也没有发生。我已经尝试了其他选项,例如尝试通过cmd运行它(它给了我一个访问错误),HKEY_CLASSES_ROOT\jarfile已经有命令:“C:\Program Files\jav

  • 我创建了一个程序来处理数据库,我在IntelliJ IDEA中编译时遇到了以下错误。有人知道为什么会发生这种情况吗?我该如何解决它?