尽pipe使用了CLASSPATH环境variables,java.lang.ClassNotFoundException也是如此

我正试图连接到Windows 7上使用Java的MySQL数据库。 尽pipe在CLASSPATH中添加了jdbcdriver jar文件的完整url,但抛出了java.lang.ClassNotFoundException:com.mysql.jdbc.Driver。 有谁能告诉我我在这里错过了什么? 它工作,如果我在项目库中添加jar文件,但我想通过CLASSPATH本身。 我的类path如下所示 – C:\ jython2.5.1 \ javalib \ mysql-connector-java-5.1.12-bin.jar

我想说清楚这不是我正在进行的实际项目。 我实际上是用Jangthon来使用Django,它需要JDBC驱动程序访问数据库。 这就是为什么我必须使用CLASSPATH来做到这一点。

CLASSPATH环境variables只能java.exe命令使用,即使在没有任何-cp-classpath-jar参数的情况下也是如此。 它被诸如Eclipse,Netbeans和IDEA之类的IDE所忽略

这个环境variables在现实世界中也被认为是不好的做法,因为它打破了可移植性。 即程序X将成功运行,而程序Y不会在不改变CLASSPATH情况下运行。 对于Sun Oracle来说,只有“有用”才能防止初学者厌倦了在遵循Java教程时在-cp-classpath参数中-cpinput相同的类path。 在现实世界中,只有使用-cp / -classpath参数指定了整个命令时,批处理/ shell文件才是首选。

在你的情况下,你正在使用一个IDE。 类path在那里被称为“构buildpath”。 在普通的Java项目中,它代表了编译时和运行时类path。 您可以在项目的属性中configuration它。 你可以添加一个完整的文件夹,你可以添加个人/外部的JAR文件,你可以链接项目,等等。 利用它。 忘记使用CLASSPATH环境variables。 这是Sun Oracle的一个错误。 他们认为要说服起动者,但最终只会让初学者感到困惑,因为他们错误地将该环境variables解释为类path。

也可以看看:

  • 如何将JAR库添加到WAR项目而不面临java.lang.ClassNotFoundException? 类pathvs构buildpathvs / WEB-INF / lib

终于帮助我的是,即使我做了Java提供的所有类path马戏,也将mysql-connector-java-5.1.15-bin.jar复制到\ jre \ lib和\ jre \ lib \ ext(! )虽然环境是纯粹的记事本/命令行。

使用Netbeans的工作是:运行>设置项目configuration>自定义。 在库>添加库下。 增加了MySQL的JDBC驱动程序(我假设它出现在列表中,因为我将jar文件复制到jre \ lib \ ext文件夹中,并且无缝工作。

我尝试设置类path,但没有奏效。 我正在使用Netbeans 7.0

我之前也有过这个问题,但是在把/ mysql-connector-java-5.1.34-bin.jar(从这里下载)添加到apache-tomcat-8.0.15 \ lib文件夹后 ,运行我的项目,它确实工作。

注意:即使在添加jar文件之后,错误依然存在,然后重新启动Tomcat服务器并重新运行您的项目。

在“Netbeans”select属性,然后点击“库”,然后点击“添加库…”button,然后select“MySQL JDBC驱动程序”,然后点击“添加库”button,然后点击“确定“button

  1. 打开Netbeans IDE
  2. 右键单击您的项目。
  3. select属性。
  4. 在左侧单击库。
  5. 在“编译”选项卡下 – 单击添加jar /文件夹button。
  6. select已下载的“mysql-connector-java-5.1.25-bin.jar”文件(从dev.mysql.com 下载Connector / J )
  7. 点击OK
  8. 再次运行…它的工作。

如果你正在使用maven,添加依赖到pom.xml应该解决问题。

 <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.36</version> </dependency> 

在NetBeans IDE中,只需在属性窗口中检查Project上的属性,然后转到“library”标签,在diolog框中添加您的mysql-connector-java- * * .jar文件。

我在Netbeans有这个相同的问题。 因为我正在使用context.xml中定义的tomcat连接池,所以我需要将jdbc jar添加到项目(Properties-> Libraries)和我的Tomcat服务器中的lib /文件夹,以便在启动时看到它。