将.jar文件包含在类路径中

问题描述:

我试图在Windows环境中启动并运行JDBC。在类路径中包含.jar文件意味着什么?我看到如何修改Windows的CLASSPATH环境变量......但是需要将哪些文件放在哪里以及需要将CLASSPATH环境变量设置为什么?我已经尝试了几乎所有可以立即想到的组合,而且我很茫然。将.jar文件包含在类路径中

谢谢。

+0

类路径包含单独的jar文件和目录。在Java 6+通配符中也可以使用。设置CLASSPATH环境变量可能会导致意外的后果;在批处理文件中可以,否则只需使用-cp选项。 –

+0

我是Java文盲,并试图让我的脚离开地面。我检查了Oracle文档,他们没有提及-cp选项,更不用说它是如何使用的。我可以去哪里获得这种信息?非常感谢你! – Maestro1

+0

是否应用程序。有一个GUI? –

Look no further than Oracle's own documentation

举例来说,如果你在/一/目录下有3个罐子,你会做这样的事情:

java -classpath /a/directory/jar1.jar;/a/directory/jar2.jar;/a/directory/jar3.jar 

您将设置CLASSPATH变量以类似的方式。

CLASSPATH变量包含找到类文件的目录列表。 .jar文件实际上是一个压缩目录,因此.jar文件的名称本身应该位于CLASSPATH中,而不是目录名称。

例如,如果您有两个目录在他们的类文件树C:\java\classes\C:\java\specialclasses\和两个jar文件C:\java\jars\jam.jarC:\java\jars\jelly.jar那么你的类路径变量将被设置为C:\java\classes\;C:\java\specialclasses\;C:\java\jars\jam.jar;C:\java\jars\jelly.jar

一般来说,除非你有两个包具有相同名称类(希望你不要'),那么你只是想添加一些常用于CLASSPATH变量的东西,而不是删除或替换那些已经存在的东西。默认情况下,它包含java。*类的目录,这些都是重要的。另外,根据您的环境,管理员可能会添加其他常用类。

+0

感谢您的回复!我必须缺少一些愚蠢的东西......我将CLASSPATH环境变量设置为 - > C:\ Users \ Jon \ JavaProjects \ TestProject \ src \; C:\ Users \ Jon \ JavaProjects \ jars \ mysql-connecter-java- 5.1.18-bin.jar \,我仍然得到ClassNotFoundException ...任何想法? – Maestro1

+0

你不想在mysql-connecter-java-5.1.18-bin.jar之后加一个\,之后加一个反斜杠使得它假设它实际上是一个目录,但它实际上是一个文件。因此,当它查找具有该名称的目录时,它找不到一个。删除该反斜杠,它应该工作正常。 –