1. 程式人生 > >項目部署到tomcat出錯(tomcat運行時的JDK版本)

項目部署到tomcat出錯(tomcat運行時的JDK版本)

pan win 52.0 pat 測試 錯誤 方式 alt bubuko

先展示一下錯誤,把項目部署到tomcat運行

技術分享圖片

出錯原因

簡單來說,就是執行代碼的jdk版本 低於 編譯的jdk版本

最後面的52.0是一種叫什麽魔碼,有各自對應的jdk版本。

其中52.0 對應的就是 jdk1.8版本。

解決辦法

1)把編譯的jdk版本降低:參考https://blog.csdn.net/qq_36769100/article/details/78880341

2)把執行代碼的jdk版本提高:

我們錯誤是把項目放到tomcat中,運行時出錯的,說明tomcat依賴的jdk版本太低了

所以我們把jdk換成較高版本:參考https://www.cnblogs.com/teach/p/6086867.html

tomcat之一:指定tomcat運行時JDK版本

tomcat作為日常開發的web應用服務器,給開發測試帶來了很多便利,tomcat的運行依賴JDK的支持,在安裝JDK時經常會配置環境變量:JAVA_HOME、CLASSPAT,且需要添加path變量。把應用部署到tomcat下時大多數不需要修改運行環境,但是有時候需要修改JDK的版本,從可以修改tomcat運行時的JDK版本,我們可以知道使用tomcat時不時必須要配置JDK環境變量,因為我們可以通過修改tomcat的文件,指定tomcat運行時的JDK版本。

下面說明如何修改tomcat運行時JDK版本

windows

1、解壓下載的tomcat;

2、找到bin下的setclasspath.bat文件;在文件的開始出添加如下代碼:

set JAVA_HOME=D:\Program Files\Java\jdk7\jdk1.7.0_51
set JRE_HOME=D:\Program Files\Java\jdk7\jre7

上面的意思是設定JAVA_HOME和JRE_HOME的路徑;

通過這裏我們可以看出可以不設置JDK的環境變量;

linux

在bin下找到setclasspath.sh,在文件的最開始加入如下代碼:

set JAVA_HOME=/home/jdk/Java\jdk7\jdk1.7.0_51
set JRE_HOME=/home/jdk/Java\jdk7\jre7

修改了setclasspath文件之後,tomcat在啟動時便使用設定的JDK。

但是為什麽這樣設置之後就可以呢?

我們都知道啟動tomcat可以通過運行bin下的startup.bat,startup.bat會調用catalina.bat文件,而catalina.bat會調用setclasspath.bat文件來獲取JAVA_HOME和JRE_HOME這兩個環境變量的值,因此若要在tomcat啟動時指向特定的JDK,則需在setclasspath.bat文件的開頭處加上JAVA_HOME和JRE_HOME。

基於上面的運行方式,還有第二種修改方式,如下:

1、修改tomcat/bin/catalina.bat,增加 set JAVA_HOME=D:\Program Files\Java\jdk7\jdk1.7.0_51

2、修改tomcat/bin/setclasspath.bat,同樣增加

set JAVA_HOME=D:\Program Files\Java\jdk7\jdk1.7.0_51

set JRE_HOME=D:\Program Files\Java\jdk7\jre7

這兩種方式使用任何一種都可以實現修改tomcat的依賴JDK環境,同時可以不配置JDK的環境變量。

項目部署到tomcat出錯(tomcat運行時的JDK版本)