Windows7 7 / Eclipse中的PATH和CLASSPATH

时间:2010-05-18 15:01:12

标签: java eclipse

所以我想设置PATH和CLASSPATH系统变量,这样我就可以在命令行中使用javac和java命令了。我可以在eclipse中编译和运行java程序,但我也希望能够通过命令行运行它们。

这是我安装Java的地方:

C:\Program Files (x86)\Java
    jdk1.6.0_20
    jre6

这就是eclipse存储我的Java项目的地方:

D:\java-projects
    HelloWorld
        bin
            HelloWorld.class
        src
            HelloWorld.java

我已经设置了这样的PATH和CLASSPATH变量:

PATH: C:\Program Files (x86)\Java\jdk1.6.0_20\bin
CLASSPATH: D:\java-projects

但它不起作用。我写的时候:

java HelloWorld

或者:

java HelloWorld.class

我得到这样的错误:

Exception in thread “main” java.lang.NoClassDefFoundError: HelloWorld

错误更长,这只是第一行。

我该如何解决这个问题?我主要感兴趣的是能够从命令行运行已编译的.class程序,我可以在日食中进行编译。

5 个答案:

答案 0 :(得分:3)

您的类路径应指向“D:\ java-projects \ HelloWorld \ bin”。

或者,您可以使用“-cp”参数指定类路径,而不是使用环境变量:

java -cp D:\ java-projects \ HelloWorld \ bin HelloWorld

答案 1 :(得分:2)

您需要将类路径设置为

d:\java-projects\bin

目前你还没有“bin”部分。

请注意,java HelloWorld.class永远不会有效 - 它位于名称之后,而不是文件名称。

答案 2 :(得分:1)

您的CLASSPATH未指向class文件所在的目录。

答案 3 :(得分:1)

您的类路径应指向D:/ java-projects / bin

但我会邀请您使用一些构建工具来管理您的项目。 看看ANT,Maven,Gradle。

答案 4 :(得分:1)

您的PATH环境变量应包含JDK安装目录的bin目录。因此,您应该将C:\Program Files (x86)\Java\jdk1.6.0_20\bin添加到PATH

不建议设置永久CLASSPATH环境变量,因为它是一个全局设置,会影响您在计算机上运行的所有Java程序。如果未设置CLASSPATH,则Java默认只查看当前目录。

不要设置CLASSPATH,而是使用-cp命令中的-classpathjava选项,例如:

java -cp D:\java-projects\HelloWorld\bin HelloWorld

如果您不想在每次要运行程序时键入该命令,请将该命令放在批处理文件中(例如hello.bat),然后只需键入hello即可运行该文件}。