enter image description here我创建了一个Java Enterprise Web Application,并使用了tomcat服务器,但是当我尝试运行jsp文件时,它说:运行'Tomcat 9.0.16(Ubuntu)'时出错:端口超出范围:-1。端口:8080是免费的,任何人都可以告诉我解决方案。
我检查了端口,没关系,更改了端口,重新启动后无济于事!
答案 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>编辑配置>运行/调试配置
GL