一个类组合了其他类时,明明相应的源文件都在一个目录里,却编译报错提示找不到组合的类(java,命令行)

问题:

在C:\1000目录下创建四个java源文件,如下图:

其中Test.java是主类源文件,

      PC.java的类PC组合了CPU.java中的类CPU和HardDisk.java中的类HardDisk。

       Test.java的类Test组合了CPU.java中的类CPU,HardDisk.java中的类HardDisk和PC.java中的类PC。

直接编译Test.java:

试着编译PC.java:

明明都在同一目录下,为什么还提示找不到组合的类呢?

原因:

java只认classpath(大小写不敏感)环境变量,而不认当前目录。

解决方法:

在系统环境变量classpath的变量值中添加 . 即可。

未添加前:

添加后:

(注意:使用添加前打开的命令行仍是编译不通过,所以记得关闭重启命令行再编译)

效果:

发布了42 篇原创文章 · 获赞 30 · 访问量 7216

猜你喜欢

转载自blog.csdn.net/Mr____Cheng/article/details/102598658