Linux安装JDK和Tomcat部署项目

一、安装JDK和Tomcat照着以下博主的文章的:

阿里云搭建java运行环境二安装JDK1.8+Tomcat8.5
linux服务器上安装jdk的两种方法(yum+下载包)

二、防火墙放开端口号8080,服务器安全组放通8080端口

  • 设置开放的端口号(TCP 80端口)
firewall-cmd --add-port=80/tcp --permanent 

–add-port=80/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效

  • 重启防火墙 (重启后端口才有效)
firewall-cmd --reload
  • 查看开放的端口号
firewall-cmd --list-all 
  • 关闭端口
firewall-cmd --remove-port=80/tcp --permanent 

三、成功访问Tomcat首页并部署Web项目

在这里插入图片描述


部署Web项目出错:
在这里插入图片描述查看Tomcat文件夹下logs日志文件,有报错:
19-Jul-2020 23:44:29.387 SEVERE [localhost-startStop-3] org.apache.catalina.core.StandardContext.filterStart Exception starting filter [LoginFilter]
java.lang.UnsupportedClassVersionError: filter/LoginFilter has been compiled by a more recent version of the Java Runtime (class file version 56.0), this version of the Java Runtime only recognizes class file versions up to 52.0 (unable to load class [filter.LoginFilter])

什么?看不懂?百度翻译一下:
filter/LoginFilter是由较新版本的Java运行时(类文件版本56.0)编译的,此版本的Java运行时只识别52.0以下的类文件版本(无法加载类[过滤器.LoginFilter])
大致意思是这个Java的Class文件是有较高的JDK编译的,现在的JDK版本太低了,无法识别(JDK只是向下兼容),自我反思了一下,我服务器装的是JDK1.8,做项目时用的是JDK12,查看项目的pom文件:

<properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.encoding>UTF-8</maven.compiler.encoding>
        <java.version>12</java.version>
        <maven.compiler.source>12</maven.compiler.source>
        <maven.compiler.target>12</maven.compiler.target>
    </properties>

果然,我用的是JDK12!!!
把java版本改成1.8页面成功访问。所以项目开发用的JDK版本最好和部署时的JDK版本一致,否则很容易出错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值