用久了myeclipse,今天突然想在dos编译看看,因为以后面试可能不是用编译器的。文件夹结构如下:
d:\com 下放了主文件Test.java,d:\com\pojo放了个Cat.java,
Test中package com;Cat中package com.pojo,
环境变量中设置了classpath为d:/(其他也有.;等等),
但是编译时没问题,能编译成.class文件,但是运行时就出错说wrong name com/Test
只有把Test.java中的package行去掉,才能运行.
但是这样就违背了命名空间的规则啊。
d:\com 下放了主文件Test.java,d:\com\pojo放了个Cat.java,
Test中package com;Cat中package com.pojo,
环境变量中设置了classpath为d:/(其他也有.;等等),
但是编译时没问题,能编译成.class文件,但是运行时就出错说wrong name com/Test
只有把Test.java中的package行去掉,才能运行.
但是这样就违背了命名空间的规则啊。
你在d:\根目录下试试行不行
|-- classes
`-- com
|-- Test.java
`-- pojo
`-- Cat.java
javac -d classes com/pojo/Cat.java
javac -d classes -cp classes com/Test.java
java -cp classes com.Test