Java 正确配置的JDBC类路径变量是什么样子的?
我正在尝试设置JDBC,以便从我的Linux机器(特别是加载在Chromebook上的KDE端)建立到MySQL数据库的连接。我看到一些帖子建议在/etc/bash.bashrc中设置CLASSPATH变量,有人说是/etc/profile。以下哪一项是标准 如果我通过bash命令手动设置类路径:Java 正确配置的JDBC类路径变量是什么样子的?,java,mysql,linux,jdbc,Java,Mysql,Linux,Jdbc,我正在尝试设置JDBC,以便从我的Linux机器(特别是加载在Chromebook上的KDE端)建立到MySQL数据库的连接。我看到一些帖子建议在/etc/bash.bashrc中设置CLASSPATH变量,有人说是/etc/profile。以下哪一项是标准 如果我通过bash命令手动设置类路径: export CLASSPATH=/home/username/JDK/mysql-connector-java-8.0.15.jar 它可以正常编译,但运行该程序会产生错误:无法找到或加载主类my
export CLASSPATH=/home/username/JDK/mysql-connector-java-8.0.15.jar
它可以正常编译,但运行该程序会产生错误:无法找到或加载主类myTest。或者,如果使用默认的类路径、编译和运行,则代码中使用JDBC内容的任何内容都会得到ClassNotFoundException。类路径应该包括JVM运行应用程序所需的所有类:所有依赖项和应用程序类 您可以为每个java调用传递类路径,如
java -jar <jar file>
或
但是您也可以使用构建工具来构建带有依赖项和配置类路径的胖jar,或者使用主jar构建zip,依赖项是一个单独的文件夹,并且在jar中设置了预配置的类路径。请注意:当使用-jar时,我相信不使用-cp,而是使用清单中的类路径。根据经验和:当您使用-jar时,指定的jar文件是所有用户类的源文件,其他类路径设置将被忽略。@CarlosHeuberger,谢谢。更正了我的回答。你应该将查找类的目录或JAR文件也添加到类路径中:例如,CLASSPATH=/home/username/。。。或者CLASSPATH=/home/username/my.jar/home/username/。。。如果没有设置类路径,默认为当前目录/and/so/on-trick.可能与、、等重复。几乎没有一个普通的Java应用程序使用CLASSPATH环境变量,因为如果在应用程序需要的依赖项之前加载不同版本的依赖项,它可能会导致奇怪的行为和错误。此外,使用-jar执行的应用程序,我想大多数应用程序甚至会忽略该环境变量,只使用其清单中指定的类路径。最好忘记CLASSPATH环境变量的存在。。
java -cp <your full classpath goes here> <your main class>