Java Web 运行环境

2004年10月 JDK 1.5(Java SE 5)
2006年12月 JDK 1.6(Java SE 6)
2011年07月 JDK 1.7(Java SE 7) Oracle时代
2014年03月 JDK 1.8(Java SE 8)
2017年09月 JDK 1.9(Java SE 9)

JVM是一个虚拟机,只认识字节码。JRE包含虚拟机,还包含运行Java程序的其它环境支持。JDK也包含了JRE,除此还包含了一系列工具,比如编译Java程序的javac。

JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

Linux 和 Windows区分32位和64位。Mac OS X不区分。Windows下提供了exe安装包。Mac OS X下提供DMG安装包。Linux提供了RPM和GZ压缩包。

需要明确知道安装路径:
Windows上一般就是C:\Program Files\Java\jdk1.8.0_version,一般不应该放入到带空格的路径中。
Linux只要解压tar.gz文件到某个位置,如果使用RPM包安装,可以通过rpm -ql来确定安装位置(一般安装在/usr/java/jdk1.8.0,不需要单独设置环境变量,RPM安装做了一系列软连接)。
Mac OS X中,安装路径:/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home/

安装完成后可设置环境变量,Linux中一般可以往~/.bash_profile中添加:
export PATH=”/usr/local/java/bin:$PATH”
Windows下设置Path环境变量。

注:除非是下载源代码,否则不需要再设置环境变量。


以上是Mac中的安装,安装完毕:

cd /Library/Java/JavaVirtualMachines/

ls
jdk-9.0.4.jdk		jdk1.8.0_144.jdk

which javac
/usr/bin/javac

javac --version
javac 9.0.4

当前安装了两个版本。可以看到,9之前的命名是1.8.0,从9开始就变成了9。

确认版本号:

which javac
javac -version

用于编译Java程序所使用的javac命令是使用Java编写的,这个类是lib路径下tools.jar文件中sun
tools\javac路径下的Main类,JDK的bin路径下的javac命令实际仅是包装了这个Java类,bin路径下大部分命令都是包装了tools.jar文件里的工具类。

库源代码在JDK中以src.zip的形式发布。文档:http://docs.oracle.com/javase/8/

Tomcat安装。

在Mac下可用brew install tomcat,也可以到https://tomcat.apache.org手动下载安装。Tomcat本身是一个Java软件,可以运行多个实例。

Tomcat目录:

bin:存放tomcat命令
conf:存放tomcat配置信息,里面的server.xml文件是核心的配置文件
lib:支持tomcat软件运行的jar包和技术支持包(如servlet和jsp)
logs:运行时的日志信息
temp:临时目录
webapps:共享资源文件和web应用目录
work:tomcat的运行目录.jsp运行时产生的临时文件就存放在这里

启动关闭:

catalina start
catalina stop

启动后:

/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home/bin/java 
-Dcatalina.base=/Users/vfeelit/eclipse-workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp1 
-Dcatalina.home=/usr/local/Cellar/tomcat/9.0.6/libexec 
-Dwtp.deploy=/Users/vfeelit/eclipse-workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp1/wtpwebapps 
-Djava.endorsed.dirs=/usr/local/Cellar/tomcat/9.0.6/libexec/endorsed 
-Dfile.encoding=UTF-8 

-classpath 
/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home/jre/lib/resources.jar:
/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home/jre/lib/rt.jar:
/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home/jre/lib/jsse.jar:
/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home/jre/lib/jce.jar:
/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home/jre/lib/charsets.jar:
/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home/jre/lib/jfr.jar:

/usr/local/Cellar/tomcat/9.0.6/libexec/bin/bootstrap.jar:
/usr/local/Cellar/tomcat/9.0.6/libexec/bin/tomcat-juli.jar:

/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home/lib/tools.jar org.apache.catalina.startup.Bootstrap start

把Tomcat中libexec/bin/中的bootstrap.jar和tomcat-juli.jar在classpath中出现。启动Tomcat不过是启动一个Java虚拟机实例而已。