开发者社区> 问答> 正文

Java环境变量中classpath是必须配置吗? : 配置报错 

以前一直以为环境变量中的classpath必须配置,今天发现java环境变量classpath不设置也可以用,例如:打印HelloWorld,而且一时还真没发现不配置就不能使用java的例子,我想问一下什么情况下classpath必须配置??求大神举例回答。

展开
收起
kun坤 2020-06-04 12:00:16 2400 0
1 条回答
写回答
取消 提交回答
  • classpath 不是必须配置的。
    假如你在D盘下有个test.java文件。
    你进到d盘后,javac test.java 那么会在当前生成test.class文件。
    所以你java test.class会得到相应的结果。
    如果你设置了classpath是D:/myclasspath
    你将test.class剪切到D:/myclasspath中,你在d路径下执行java test 照样可以得到结果。
    因为规则是这样的:你执行java test的时候,先在test.java当前目录找test.class文件找不到再去classpath中找,这里是到D:/myclasspath中找。 ###### 不要被旧书误导了,jdk6以后的版本都不用再配CLASSPATH,而且也不建议去配。
    理论上java安装完一个变量都不需要配置,只不过为了命令行敲起来方便,所以通常会把jdk/bin目录下加入到path变量中。JAVA_HOME这个变量的作用是一些基于java开发的工具会用到,比如tomcat,groovy,vertx.....,如果不用这个工具这个变量也可以免了。
    不过通常为了方便以后用java开发的小工具,一般都会设置JAVA_HOME,然后把$JAVA_HOME/bin追加到PATH中 ######在IDE中配了jdk就不要classpath了,相当于已经配了,命令行就需要配置了######IDE中我知道可以不用配,我主要是想测试一下dos里面,发现只配置java_home和path就可以用(运行一般的程序都没问题,他们说jdk会默认在当前目录寻找),查了下有人说必须配置classpath,有人说jdk1.5以后就不用配置了,所以我想问一下有没有一种情况不配置classpath,程序就运行不了了。。######没有配过。 感觉不到有什么用。######上次在linux中用ant,必须在classpath中设置dt.jar和tool.jar,要不无法运行。。。######官方说JDK1.5以后不用配置了~ ######以前也考虑过这个问题,你自己可以试下。如果配置了classpath后,是否编译的后产生的class文件都在这个路径上产生?如果不配置这个路径是否在当前路径下产生class文件。我只是猜想。######classpath是在这里找class,不是在这里生成classpath.###### 你要明白classpath是做什么用的,可以Google或者Wiki上去看下,最好了解下classpath的起源等内容 ######1.5之后确实不用配置了######也可以参考下这个  百度搜索:Java环境变量中classpath是必须配置吗  

    2020-06-05 13:13:47
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载