开始接触java的时候觉得java虚拟机很麻烦,不明白jre与jdk的区别是什么?后来搞清楚jre是个运行环境,jdk是个开发环境。因此写java程序的时候需要jdk,而运行java程序的时候就需要jre。而jdk里面已经包含了jre,因此对java_home设置为jdk的路径时也可以正常运行java程序,但是jdk比较大包括了许多与运行无关的内容,因此运行普通的java程序无须安装jdk。
但是用了eclipse又有了疑问,为什么这个开发环境jre就可以正常运行呢?其实在eclipse中内嵌了java编译器,并且与jdk中的javac完全相容,因此无须使用jdk也可以直接编译java程序。
学习j2ee的时候又开始不明白,为什么tomcat和apusic用jre就可以启动,weblogic用jdk才能启动呢?原因是tomcat和apusic 4都已经包括了一个源代码编译器,而weblogic没有包括这个编译器包。
那么为什么需要编译器呢?因为在web应用中jsp文件是需要转换成servlet,这个servlet文件还需要编译成可以在jre上执行的class文件,因此必须提供有编译能力的jdk,将java_home设置为jdk的路径就可以了。
那么新出现的apusic 5.0呢?这个版本为了使大家可以灵活调整jvm的版本,因此不再提供自带的java编译器,而是通过用户安装的jdk来完成jsp的编译工作,这个也就是为什么apusic 5.0必须通过jdk启动的原因。
但是用了eclipse又有了疑问,为什么这个开发环境jre就可以正常运行呢?其实在eclipse中内嵌了java编译器,并且与jdk中的javac完全相容,因此无须使用jdk也可以直接编译java程序。
学习j2ee的时候又开始不明白,为什么tomcat和apusic用jre就可以启动,weblogic用jdk才能启动呢?原因是tomcat和apusic 4都已经包括了一个源代码编译器,而weblogic没有包括这个编译器包。
那么为什么需要编译器呢?因为在web应用中jsp文件是需要转换成servlet,这个servlet文件还需要编译成可以在jre上执行的class文件,因此必须提供有编译能力的jdk,将java_home设置为jdk的路径就可以了。
那么新出现的apusic 5.0呢?这个版本为了使大家可以灵活调整jvm的版本,因此不再提供自带的java编译器,而是通过用户安装的jdk来完成jsp的编译工作,这个也就是为什么apusic 5.0必须通过jdk启动的原因。
闽公网安备 35060202000074号