首页 > 解决方案 > 为 JDBC 使用正确配置的 CLASSPATH 变量是什么样的?

问题描述

我正在尝试设置 JDBC 以从我的 Linux 机器(特别是在 Chromebook 上侧载的 KDE)建立与 MySQL 数据库的连接。我看过一些帖子建议将 CLASSPATH 变量设置在 中/etc/bash.bashrc,有人说/etc/profile。以下哪个是标准?

如果我通过 bash 命令手动设置类路径:

export CLASSPATH=/home/username/JDK/mysql-connector-java-8.0.15.jar

它会编译得很好,但运行程序会产生Error: Could not find or load main class myTest. 或者,如果我使用默认的类路径,编译并运行,我会ClassNotFoundException在使用 JDBC 内容的代码中得到任何东西。

标签: javamysqllinuxjdbc

解决方案


类路径应该包括 JVM 运行应用程序所需的所有类:所有依赖项应用程序类。

您可以为每个 java 调用传递类路径,例如

java -jar <jar file>

或者

java -cp <your full classpath goes here> <your main class>

但是您也可以使用构建工具来构建带有依赖项和配置类路径的胖 jar,或者使用主 jar 构建 zip,依赖项是一个单独的文件夹,并且在您的 jar 中设置了预配置的类路径。


推荐阅读