我需要在 IntelliJ IDEA 中为 Tomcat6 调试一个 Web 应用程序。
当我尝试运行我的 Web 应用程序时,出现两个错误:
- 地址 localhost:1099 已被使用
- 无法打开调试器端口:java.net.SocketException
手动启动 Apache Tomcat 6 服务可以正常工作。
为了能够从 Intellij IDEA 调试 Apache Tomcat 6 中的 Web 应用程序,我应该怎么做?
我需要在 IntelliJ IDEA 中为 Tomcat6 调试一个 Web 应用程序。
当我尝试运行我的 Web 应用程序时,出现两个错误:
手动启动 Apache Tomcat 6 服务可以正常工作。
为了能够从 Intellij IDEA 调试 Apache Tomcat 6 中的 Web 应用程序,我应该怎么做?
按照以下步骤工作: -
现在你可以走了:)
我一直面临这个问题。这是解决方法
LINUX
打开一个终端实例。
fuser 1099/tcp
这应该会返回一个进程 ID。
1099/tcp: 31596
其中 31596 是进程 ID。现在你可以使用进程 ID 来杀死它,或者只是 bash 以下 -
fuser -k 1099/tcp
视窗
打开命令提示符实例。
netstat -aon | find "1099"
这将为您返回该流程的一个实例。
输出:
TCP 0.0.0.0:1099 0.0.0.0:0 LISTENING 15776
这里 15776 是进程 ID。要杀死它,请输入 -
taskkill /F /PID 15776
干杯!
您可以在“运行/调试配置”对话框中更改 JMX 端口(默认为 1099) 。只需尝试不同的端口号(即 9099)。
如果您之前启动并运行了 Web 应用程序,则可能有一个旧的调试服务器在后台运行时没有正常关闭。有关如何查找使用端口 1099 的进程的信息,请参阅这篇文章。如果证明是 java 进程,请杀死它。
(如果您使用上面链接中建议的 GUI sw,您可以通过标记所有使用端口 1099 的 Java 进程来终止进程,右键单击并按“结束进程...”)
如前所述,后台运行着一个旧的调试服务器。
我的解决方案是关闭从 Windows 任务管理器中打开的 Java 进程。
请先确认您可以关闭此进程,然后再执行此操作!
将您的 http 端口更改为 8080(tomcat 的默认端口)并将端口调试为当前未被任何进程使用的端口。您可以使用大于 1024 的任何值,但由于您在 1099 上遇到错误,请尝试使用大于 6000 的值。
调试器设置可以在这里找到
可能有其他程序或服务器在后台运行。首先关闭在后台运行的其他服务器,然后重新启动您的服务器。
对我有用的是。我假设我需要在“服务”[Windows + R >> services.msc]下运行“Apache Tomcat”服务
我去这里停止了Tomcat服务。然后我来到我的 Java 应用程序并在 Intellij 中运行它,它允许我运行它。
希望这可以帮助!
只需在使用 InteliJ 时关闭所有其他不必要的服务器。
我停止了我的 WAMP 以消除此错误“端口已在使用中”。