目标运行时 Apache Tomcat v9.0 不支持项目构面 Java 1.8
时间: 2024-02-25 13:54:59 浏览: 170
你需要将你的项目构建为 Java 1.7 或者更低版本,才能在 Apache Tomcat v9.0 上运行。你可以在项目的 pom.xml 文件中设置 Java 版本,或者在你的 IDE 中设置项目的 Java 版本。如果你使用的是 Maven 构建工具,你可以在 pom.xml 文件中添加以下代码来指定 Java 版本:
```
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
```
将 `<source>` 和 `<target>` 的值设置为需要的 Java 版本即可。
相关问题
jdk1.8 版本配置那个tomcat 9.0
JDK 1.8版本与Tomcat 9.0之间的兼容性需要注意,因为Tomcat 9.x主要支持的是Java EE 8及以上的特性,而JDK 1.8相对旧一些,但仍可以用于部署Tomcat 9。以下是配置步骤:
1. **下载安装**:
- 首先,你需要下载对应操作系统的JDK 1.8(如`jdk-8uXX-linux-x64.tar.gz`),以及Tomcat 9.0的tarball文件(`apache-tomcat-9.0.X-bin.zip`)。
2. **设置环境变量**:
- 安装JDK后,在`bash_profile`或`bashrc`等环境中添加JDK路径,例如:
```
export JAVA_HOME=/path/to/jdk1.8
export PATH=$JAVA_HOME/bin:$PATH
```
3. **解压Tomcat**:
- 将下载的Tomcat解压到一个合适的目录,比如 `/opt/tomcat`,然后创建一个`conf`文件夹,并将JDK的bin目录添加到`CATALINA_OPTS`:
```
vi /opt/tomcat/conf/server.xml
<Engine name="Catalina" defaultHost="localhost">
...
<Environment name="JAVA_OPTS" value="-Djava.awt.headless=true ${CATALINA_OPTS}" type="java.lang.String"/>
</Engine>
```
这里加上`-Djava.awt.headless=true`是为了避免启动图形界面,`CATALINA_OPTS`会包含你的JDK选项。
4. **启动Tomcat**:
- 使用命令行进入Tomcat目录并运行 `./bin/startup.sh` (Unix/Linux) 或 `./bin/startup.bat` (Windows),开始服务器。
5. **验证安装**:
- 打开浏览器访问 `http://localhost:8080/manager/html`,如果能看到Tomcat的管理页面,说明配置成功。
运行环境:1.linux系统 2. ssm框架 3. tomcat9.0 4. jdk1.8 要求:jsp从页面输入一个IP地址和一个数字,把它们传到home下的shell脚本中,写出完整代码和代码所在的文件名,以及运行结果
文件名:ip.jsp
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>IP地址输入</title>
</head>
<body>
<form action="runShell.jsp" method="post">
IP地址:<input type="text" name="ip"><br>
数字:<input type="text" name="num"><br>
<input type="submit" value="提交">
</form>
</body>
</html>
```
文件名:runShell.jsp
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<%@ page import="javax.servlet.*" %>
<%@ page import="javax.servlet.http.*" %>
<%@ page import="org.apache.commons.lang3.StringUtils" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>执行shell脚本</title>
</head>
<body>
<%
String ip = request.getParameter("ip");
String num = request.getParameter("num");
if(StringUtils.isEmpty(ip) || StringUtils.isEmpty(num)){
out.println("参数不完整");
}else{
String command = "/home/run.sh " + ip + " " + num;
try {
Process process = Runtime.getRuntime().exec(command);
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line = null;
while((line = reader.readLine()) != null){
out.println(line+"<br>");
}
} catch (IOException e) {
e.printStackTrace();
}
}
%>
</body>
</html>
```
文件名:run.sh
```bash
#!/bin/bash
ip=$1
num=$2
echo "IP地址为:$ip"
echo "数字为:$num"
```
运行结果:在浏览器中访问ip.jsp页面,输入IP地址和数字,点击提交按钮,会跳转到runShell.jsp页面,页面会输出IP地址和数字。同时,shell脚本也会输出IP地址和数字。
阅读全文