目录
解决nor the JRE_HOME问题(修改setclasspath.bat)
解决nor the JRE_HOME问题(单独加jre的环境变量)
下载
官网地址:Apache Tomcat官网
配置环境变量
对压缩包进行解压,把解压的文件解压到一个没有中文目录的路径下:然后配置环境变量:
点击确定然后尝试一下tomcat,可不可以起来!发现两种启动方式都是不行。
解决nor the JRE_HOME问题(修改setclasspath.bat)
方式一:使用命令行来启动tomcat
方式二:双击startup(双击后完全没反应)
在使用命令行窗口还是可以知道报什么错了,没有jre的环境变量,我们在安装jdk的时候一般只是单纯的安装了jdk环境,并不会去配置相关的jre环境,但是tomcat又是需要这个环境变量的,所以就出现问题了,解决方式两种:
首先知道为什么这个tomcat要需要这个jre环境变量:tomcat要启动都是通过调用startup.bat来启动的,而这个程序里边实际又调用了另一个批处理,就是setclasspath.bat这个文件。
下面这段代码是脚本语言:
所以方式一就是直接在这个setclasspath自己手动指定这个jre路径;不过由于我使用的是jdk11,所以下载的jdk解压后实际上是没有jre目录的,需要自己手动生成:(经过后面的测试,这一步是可以省略的(可以跳过但是还是建议看一下),因为jdk11以及之后默认jre和jdk同一个目录了,所以就没必要在去额外配置jre了,但是需要把jre_home设置成jdk的目录就行,就是多配置一个环境变量就行)
这是我的jdk目录,里面并没有jre文件夹;
在该目录下cmd,然后执行下面指令:如果控制台没有出现任何错误,就表示导出成功
bin\jlink.exe --module-path jmods --add-modules java.desktop --output jre
然后在刚刚的setclasspath中添加自己的jre环境变量。
然后还是报错,如下:Using CATALINA_OPTS: ""
然后查了一些资料发现,jdk11后默认了jre目录是和jdk同目录(网上博客查到的)然后我就把/jre给删除了:
配置变成了set JRE_HOME=E:\java\jdk11\java11\jdk-11.0.4_windows-x64_bin\jdk-11.0.4
然后cmd执行startup,成功,但是发现乱码!
浏览器访问:http://localhost:8080 出现下面的图像表示成功;
解决nor the JRE_HOME问题(单独加jre的环境变量)
为了保证测试的准确性,我是先把刚刚在setclasspath.bat中增加的 set JRE_HOME=E:\java\jdk11\java11\jdk-11.0.4_windows-x64_bin\jdk-11.0.4 给删除了。
刚刚我们也说了 因为jdk11以及之后默认jre和jdk同一个目录了,所以就没必要在去额外配置jre了,但是需要把jre_home设置成jdk的目录就行,就是多配置一个环境变量就行。
这个系统变量中的path配不配置都行,我测试过,配与不配都可以运行成功!
配置完成后,双击startup:成功!
解决tomcat乱码问题
我们的电脑使用的字符集编码几乎都是GBK,但是我们打开tomcat的配置文件后发现这个tomcat的控制台的输出编码集是utf-8,所以当然会出现乱码呀,我们这里只需要去修改一方的编码集就行,这里我们选择去修改tomcat的编码集:
然后重启tomcat: