我网上看到的一些教程都设置了classpath,而在实际配置时不设置classpath也验证成功了,不设置classpath会影响Java的使用吗?
我网上看到的一些教程都设置了classpath,而在实际配置时不设置classpath也验证成功了,不设置classpath会影响Java的使用吗?
你看的都是老旧过时的资料,一个抄一个根本不验证。实际上CLASSPATH
环境变量早八辈子都不需要设置了,而且官方也不建议设置这个环境变量。错误的环境变量将导致不可预期的错误结果。
参考官方文档对这个环境变量的说明: https://docs.oracle.com/javas...
特别注意这里:
The preferred way to specify the class path is by using the-cp
command line switch. This allows theCLASSPATH
to be set individually for each application without affecting other applications. Setting theCLASSPATH
can be tricky and should be performed with care.
3 回答2.6k 阅读✓ 已解决
3 回答4.1k 阅读✓ 已解决
8 回答3.7k 阅读
4 回答2.8k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答2.5k 阅读✓ 已解决
3 回答1.7k 阅读✓ 已解决
1.为什么配置classpath? 在默认情况下,运行(用java命令)某个字节码文件(.class)时,就在当前目录下找,如果找到运行的字节码文件则执行,否则报错.为了使在任何目录下都能运行这个字节码文件,就需要配置classpath.
2.为什么不建议配置classpath? 当你配置了classpath后,你在一个目录下运行java命令,电脑就从你配置classpath时设置的那个目录里找符合名称的字节码文件(.class),找到就运行(否则报错).但你在其他目录下编译了一个重名的字节码文件,电脑还是会从你配置classpath时设置的那个目录找这个重名的字节码文件,此时你运行的是最初你设置的那个目录里的字节码文件,而不是你最后编译的那个重名的字节码文件.
3.说明视频:https://www.bilibili.com/vide...