读书人

CLASSPATH javac编译有关问题

发布时间: 2011-12-22 23:36:25 作者: rapoo

CLASSPATH javac编译问题!
本地class目录为:D:\JavaWorkSpace
path:Path=C:\j2sdk1.4.2_11\bin;***
CLASSPATH=.;D:\JavaWorkSpace
Hello.java代码:

package MyClass.sample;

public class Hello {
public static void main(String[] args) {
System.out.println( "Hello, world ");
}
}

cd D:\JavaWorkSpace
javac -d . Hello.java
编译通过,并在D:\JavaWorkSpace下生成文件夹MyClass\sample其中包含编译生成的Hello.class
java sample.Hello
成功显示Hello, world

在class的当前目录下进行的,javac,java都没有问题.
可是,转到C的根目录下
c:
javac -d . Hello.java
报错:error: cannot read: Hello.java
1 error
java sample.Hello
成功显示Hello, world

这是为什么? 如果java能正常运行的话,说明CLASSPATH设置没有问题,可是javac为什么别又识别不出来呢?

疑惑啊!!!

[解决办法]
classpath设置了是给java用的,不是给javac用的
C:
javac -d . Hello.java 这个出错,是因为在c盘根目录下找不到Hello.java文件
javac -d . D:\JavaWorkSpace\Hello.java 成功是因为你指出了绝对路径,但类文件肯定会在当前目录下生成,也就是c盘下,你的C盘下应该有一个MyClass\sample\这个目录

读书人网 >J2SE开发

热点推荐