在Intellij Idea上运行tomcat时出错

时间:2019-07-13 18:31:48

标签: java tomcat

enter image description here我创建了一个Java Enterprise Web Application,并使用了tomcat服务器,但是当我尝试运行jsp文件时,它说:运行'Tomcat 9.0.16(Ubuntu)'时出错:端口超出范围:-1。端口:8080是免费的,任何人都可以告诉我解决方案。

我检查了端口,没关系,更改了端口,重新启动后无济于事!

3 个答案:

答案 0 :(得分:1)

对不起,为时已晚,但是我找到了解决办法,以供将来参考。

在Tomcat安装文件夹中,有一个文件config/server.xml。其中是带有属性Server的标记port。默认情况下,此参数设置为-1,以禁用关闭端口。

来自Apache Tomcat 9 Configuration Reference

  

此服务器等待关闭命令的TCP / IP端口号。设置为-1可禁用关闭端口。

     

注意:当使用Apache Commons守护程序启动Tomcat(在Windows上作为服务运行,或在un * xes上使用jsvc运行)时,禁用关闭端口非常有效。但是,当使用标准shell脚本运行Tomcat时,不能使用它,因为它将阻止shutdown.bat | .sh和catalina.bat | .sh正常停止运行。

我猜IntelliJ使用此端口来停止Tomcat服务器,因此会抱怨是否未设置它。也许Jetbrains考虑提供有关此问题的更多信息,以使用户可以自己发现问题。

答案 1 :(得分:0)

我使用Linux Mint,因此以下成功帮助了我:

https://tecadmin.net/install-tomcat-9-on-ubuntu/

这可能与Ubuntu团队对“ Tomcat 9.0.16(Ubuntu)”应用的自定义编辑有关。我在上述指南中应用了9.0.22版的Tomcat。

此外,由于使用的是IntelliJ,因此您可能应该将目标端口设置为8081或类似端口,而不是8080。

答案 2 :(得分:0)

Apache Software Foundation \ Tomcat 9.0 \ conf.xml

设置为1将启用关闭端口。

From: <Server port="-1"
To: <Server port="1"

然后释放或选择要关闭的新端口

我们还必须确保未使用http和jmx端口;或分别使用8080和1099之外的其他方式。

选项1:

在Windows中:

找到使用端口http y jmx的PID。

netstat -aon | find "8080"
netstat -aon | find "1099"

杀死这个过程。

taskkill /F /PID xxxx
taskkill /F /PID xxxx

选项2(推荐):选择新端口

IDE>编辑配置>运行/调试配置

  • HTTP端口:8080 |至:8082
  • JMX端口:1099 |至:1102

enter image description here

GL

Source