1.在Eclipse项目下新建一个HelloWorld.java
package com.perficient.javabasic.test;
public class HelloWorld {
public static void main(String[] args){
System.out.println("Hello Java, I am James Li from Perficient China");
}
}
2.打开CMD窗口,进入HelloWorld.java所在的目录,用javac HelloWorld.java命令编译.显示
"javac is not recognized as an internal or external command"
3.设置系统环境变量,将 %JAVA_HOME%\bin 加入到Path变量中去.关掉命令行窗口,重新打开,再次编译,编译成功. 可见,系统在Path变量中寻找javac, jar, javadoc, java这样的工具
编译成功后,产生的HelloWorld.class存放在HelloWorld.java同一目录下
4.为系统设置classpath, 路径为 F:\workspace\classes
5.进入.java文件所在的目录,将HelloWorld.java编译到我们指定的目录中去
javac -d F:\workspace\classes HelloWorld.java
会在 -d目录下生成生产一个新的文件夹,HelloWorld.class在目录F:\workspace\classes\com\perficient\javabasic\test 下
6.运行 HelloWorld
java -classpath F:\workspace\classes com.perficient.basicjava.test.HelloWorld 或者
java com.perficient.basicjava.test.HelloWorld
运行成功,因为之前设置过classpath,所以该命令可以在任何目录下执行
问题 在我设置了系统的环境变量后,进入HelloWorld.java文件所在的目录,输入javac HelloWorld.java,为什么产生的HelloWorld.class是在当前目录下,而不是在系统设置的classpath的目录下?