java - 无法从 linux 中的 eclipse juno 端口 80 启动 Apache tomcat

标签 java linux eclipse jakarta-ee

在window平台上我已经从eclipse juno运行了tomcat。但在linux我面临这个问题

当我从 eclipse 运行 Web 项目时,我收到此错误消息,而从命令行我可以运行 tomcat。

Error Message is - Port 80 required by Tomcat v7.0 Server at localhost is already in use. The server may already be running in another process, or a system process may be using the port. To start this server you will need to stop the other process or change the port number(s).

我已经使用 nmap 和其他命令检查我的端口

要点是,当我从命令行运行 tomcat 时,它会启动,但是当我从 eclipse 启动它时,我收到此错误

最佳答案

首先,再次检查该端口是否确实被使用。我相信您有 apache Web 服务器 (httpd) 正在占用该端口。

其次,在 Linux 上,只有在 root 用户下运行的进程才能使用较低的端口(100 以下)。可能当您从命令行运行 tomcat 时,您会以 root 身份运行它(例如使用 sudo),但是当您从 eclipse 运行它时,它会在您的用户下运行。

解决办法是: 进行开发时使用其他端口。例如8080

对于生产: 使用特殊用户帐户(不是 root)来运行 tomcat。例如。用户名为 tomcat。将其配置为监听端口 8080。在配置为监听端口 8080 的 root 用户下运行 apache Web 服务器 (httpd),并配置为使用 mod_jk 连接到 tomcat。这是最安全可靠的常用配置。

关于java - 无法从 linux 中的 eclipse juno 端口 80 启动 Apache tomcat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16664065/

相关文章:

java - 我可以在 Android 中将 FloatingActionButton 转换为 ImageButton 吗?

Java 小程序无法在 AdoptOpenJDK 中运行

java - jBullet 例子

linux - Raspberry Pi 上不带 X11 的 SDL2 应用程序中的键盘和鼠标

eclipse - 如何更改 Eclipse/SpringSource 工具套件中源文件夹的顺序

eclipse - 使 Eclipse 不运行项目的错误

java - 通过函数参数在 Java 中接收不透明结构引用的 SWIG 接口(interface)

c++ - 在 Linux 下用 C++ 执行 ping 操作的最佳方法是什么?

c++ - 将 C++ 代码从 MS Visual Studio 移植到 Linux 并处理类型化枚举

java - Eclipse:未获取引用库 .jar 的更新