关于JDK和JRE:
JDK全称是Java Development Kit,是java语言的软件开发工具包,它包含了java的运行环境和开发工具。
JRE全称是Java Runtime Environment,即java运行环境。也就是说JRE是包含在JDK里面的。
如果你只安装了jre,那么你只能运行已经编译好的字节码文件,即.class文件。如果是java源文件的话,就需要安装jdk,利用jdk中的javac将.java文件编译成.class字节码文件,然后利用java.exe解释编译好的.class文件,最后输出得到运行结果。
cmd下运行java程序遇到的一些问题:
这里有两处和预期所想不同,首先是Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8,这句话的意思是表明正在加载这个环境变量,其实这并不算是错误,只是一个提示,出现这句话的原因应该是这个java的环境变量和其他的环境变量产生了冲突,顺便说一下这个环境变量是告诉java字节码中的编码为utf8,而windows命令行是gbk的,所以这个环境变量的存在是为了防止乱码。(尽管如此我还是把这个环境变量删了,因为发现暂时应该还用不到这个环境变量。。。
然后就是找不到主类这个问题了,这个问题找了好久,后来发现是环境变量配置时出错了。有一个疑惑,既然环境变量配置错了,那为什么我之前在eclipse上编写java程序时没有出现问题呢?因为。。。eclipse不使用你自己配置的classpath,而是用它自己设置的环境变量。classpath的参数前面应该有.; (我就是少了这两个字符才出现问题的,其中.表示当前目录。..表示返回上一级目录
ok,环境变量配置正确后就没问题了。
虽然我感觉在记事本编写、在cmd下运行java程序这种事看起来很蠢,但确实能让你对一些原理性的东西理解更好
原文地址:https://www.cnblogs.com/friend-A/p/9580571.html