目录
前言
最近由于工作需要,换了一台新电脑。这可是个麻烦事,意味着我需要重新给电脑安装环境了。说起配置环境,那首先不得不从jdk开始操作。然后搜索引擎看了一大堆下来,发现很多帖子都是一路快进。不管是版本老一点jdk+tomcat的还是新一点的,都使我现在又重新尝试了一边当初配置环境的痛苦。
- 关于版本:为了开发方便和老项目的兼容性,大多数人仍然会使用JDK8+tomcat8的 官方默认版本来配置。但是现在都2023年了,我还是想推荐尝试一下高版本的组合。所以这里使用了JDK17+tomcat11的组合。不过需要注意的是,jdk17也是有版本细分的,tomcat同理。这里使用版本:JDK17.0.1+tomcat11.0.0-M4。
- 关于安装方式:考虑到后期卸载的方便,还有自己对文件的把控。这里使用了压缩包解压方式安装。并不太推荐使用安装器一键安装。虽然安装器版本的能够快速使用,几乎不用手动做环境上的配置。但是后期想卸载,你都不知道他到底某某地方放了某某文件。
- 关于选择:真要求稳的话,就请选择jdk8+tomcat8的组合。网上也有相应的较老的文章,但是也足够适用。本文暂时不对老版本做什么描述。至于为什么要下载细分版本的jdk和tomcat,是因为这是我对jdk17和tomcat11多个版本碰撞出来的结果。暂时没有出错,也是为了大家少走弯路。
- 关于操作中的问题:文章最后描述了一些注意事项,以帮助大家更好的排查错误。如果有小伙伴有什么百度解决不了的问题也可以在评论区大家一起解决。
JDK下载以及配置
1.上搜索引擎直接搜“jdk下载”基本都能直接出现官网。
2.来到官网后,发现都会是最新的版本。同时也会有我们需要的jdk17版本。不过直接在当前页面下载的话,都是官方推荐的最终稳定版,一般都是最新版。而我们需要下载它的细分版本。为了下载jdk17.0.1版本,我们需要去历史文档列表下载。
Jdk下载官网:https://www.oracle.com/cn/java/technologies/downloads/
3.点击下载之后,我们自己选择一个想要安装的地方,然后解压。
4.我们按下win+R打开运行,然后输入下面命令就能快捷打开高级系统设置。
5.在系统变量栏目新建一个JAVA_HOME环境变量。作为我们jdk的主目录,变量值就是你解压的地方的文件夹。
6.然后为了java命令正常执行,我们必须要编辑一下Path变量。
%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin
7.然后新建一个CLASSPATH变量。这个配置成功后,我们在cmd命令行中就可以随处执行java命令。
.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
8.为了解释classpath变量的作用,我们先来看一下jdk的目录。
可以看到正常使用java时,调用的命令都是一些java相关的exe程序。如果我们不配置CLASSPATH变量的话,那么我就只能在当前目录下使用java命令。配置了之后,我们就可以随处调用了。可以看见下面在我们自己的非jdk/bin目录执行的结果是成功的。至此jdk的环境就配置完毕了。
tomcat下载以及配置
1.依然是来到官网下载
我们需要到archives历史文档中去下载我们的细分版本。
主要不要下载错了,我需要的是64位的windows压缩包。
2.惯例,下载完后,解压在你想要放的目录。
3配置环境变量。这一步很简单只需要一个就够了。需要注意的是tomcat8中这个环境变量名是TOMCAT_HOME,只有在高版本的tomcat中才是CATALINA_HOME。
4.来到tomcat的bin目录下,直接双击startup.bat文件就可以开启tomcat服务器。
在浏览器中输入127.0.0.1:8080就可以访问了。不需要时,我们可以直接关掉这个命令行窗口就可以关闭我们的tomcat服务器。也可以直接双击shutdown.bat文件。
注意事项
1.我们可能会知道,老版本配置jdk时候会要求JRE_HOME,并且解压jdk之后,主目录里也会自带jre这个目录。而新版本的jdk已经不会自带jre这个文件夹了。事实上是,jdk的功能包含了jre的功能。最重要的就是jvm.dll这个就是jre的核心文件。显然jdk也有这个文件,在bin\server目录下。
方法一,JRE_HOME可以直接设置为跟JAVA_HOME一样(强烈推荐这种方法),高版本tomcat能够自动设置JRE_HOME等于JAVA_HOME,从startup.bat中就能看出来。
二是在jdk的bin目录下使用下面命令生成一个jre文件夹:
jlink.exe --module-path jmods --add-modules java.desktop --output jre
2. 我们知道bat本质上是个shell脚本文件,内部是文本格式,可以使用记事本修改的。Startup.bat这个文件里面就是一连串的命令调用。如果出现问题可以单独查看调用链路中的报错信息。在命令行里,输入startup.bat而不是双击,这样可以在命令行里看到错误。也可以输入catalina run命令来查看。
下面是双击bat的调用链路。
startup->catalina->setclasspath->catalina