IntelliJ,无法启动简单的 Web 应用程序:无法在 localhost:1099 ping 服务器

Posted

技术标签:

【中文标题】IntelliJ,无法启动简单的 Web 应用程序:无法在 localhost:1099 ping 服务器【英文标题】:IntelliJ, can't start simple web application: Unable to ping server at localhost:1099 【发布时间】:2013-10-04 19:49:51 【问题描述】:

我正在尝试按照本教程在 IntelliJ 中制作一个简单的 Web 应用程序: http://wiki.jetbrains.net/intellij/Creating_a_simple_Web_application_for_Tomcat_in_IntelliJ_IDEA_12

我相信我的 Tomcat 安装正确,因为我去的时候看到了 Tomcat 图片 http://localhost:8080/

我已经执行了所有步骤,直到它告诉我运行 index.jsp 的部分,此时我收到错误:

Error: Exception thrown by the agent : java.net.MalformedURLException: Local host name unknown: java.net.UnknownHostException: nodename nor servname provided, or not known

我在日志中看到了这个:

Application Server was not connected before run configuration stop, reason:
           Unable to ping server at localhost:1099

这个 1099 来自 Run -> Edit Configurations 中的 JMX 端口。

我该如何解决这个问题?

【问题讨论】:

这些答案都不适合我。你找到确切的解决方案了吗? 【参考方案1】:

如果我们为应用程序JAVA jdk版本安装了兼容的tomcat版本,我们可以轻松解决这个问题。

就我而言,当我将 Tomcat 10.1.0.M4 与 JAVA JDK 1.8 一起使用时,我遇到了这个问题。当我将我的 tomcat 版本降级到 9.0.41 时,问题就解决了。

您可以在此处找到与 JAVA JDK 兼容的 tomcat 版本。 http://tomcat.apache.org/whichversion.html

【讨论】:

【参考方案2】:

如果您的 tomcat 包含文件 setenv.sh ([YOUR_CATALINA_HOME]/bin/setenv.sh),它可能会重新定义 Jidea 用于设置 JMX 的 JAVA_OPTS 变量,因此您必须在此处添加它们:

export JAVA_OPTS ="$JAVA_OPTS <whatever was in setenv.sh>"
echo $JAVA_OPTS

【讨论】:

【参考方案3】:

我正在为 jboss 用户留下答案。

如果遇到此错误的任何人正在使用 jboss,请确保 JBOSS_HOME 位置正确。

【讨论】:

【参考方案4】:

如果您使用的是 java 7,请确保您拥有 Tomcat 7

brew install tomcat@7

并将运行配置更新到 Tomcat 7

Tomcat 9 正在使用 java 8

【讨论】:

【参考方案5】:

在 Windows 环境中,如果 Oracle JRE 运行时刷新了路径并将自己置于路径的最开头,则只需检查 PATH 环境变量。在这种情况下,即使 JAVA_HOME 和 JRE_HOME 指向正确的 JDK,JRE 也将具有优先权。而这种情况下 IntelliJ 将不会启动 Tomcat 实例并显示上述错误消息。

【讨论】:

【参考方案6】:

对我来说,这是一个非常不同的解决方案,因为它在 virtualbox 上运行,所以我必须编辑 hosts 文件并将 virtualbox 添加为 localhost

127.0.0.1 VirtualBox-blahblah

【讨论】:

【参考方案7】:

对于那些在您最近更新 IntelliJ(在我的情况下为 2019.2)时遇到此问题的人。

我正在使用 JBoss 服务器,所以我尝试在命令行中运行standalone.bat,我在控制台上看到了真正的问题。

它可能与你的不同,但就我而言,我看到了:

failure description: "WFLYSRV0137: No deployment content with

对于那个错误,我可以通过删除我的standalone.xml 中&lt;deployments/&gt; 节点内的项目(战争或耳朵)来解决这个问题

希望这对使用 JBoss+IntelliJ 的人有所帮助

【讨论】:

【参考方案8】:

在 IntelliJ 中设置项目的 SDK(文件 > 项目结构 > 项目:项目 SDK)对我有用

【讨论】:

【参考方案9】:

我有同样的问题。在“编辑配置..”->“Tomcat 服务器”中,我将 JRE 从“默认”更改为我当前版本的 SDK 目录地址(如 C:\Program Files\Java\jdk1.8.0_121\jre)

我的 Tomcat 版本是 8.5.31

【讨论】:

Tomcat 8.5 漏洞百出,切换到 9.0【参考方案10】:

我在使用Intellij IDEAMac OS Sierra 上运行Tomcat 6.0.53 以部署Spring 项目时遇到了这个问题。 从官方网站将 Tomcat 版本更改为 'tar.gz' 后,此问题得到解决。似乎 'zip' 是适用于 windows 的。

【讨论】:

【参考方案11】:

我有同样的问题,我的错误是,我试图用不兼容的 JDK 版本启动 tomcat 服务器并安装了 Apache tomcat 服务器。在我的例子中,我安装了 JDK 7 和 Apache tomcat 9。对于 Apache 9,JDK 应该 >= 8。

为了兼容性检查这个https://tomcat.apache.org/whichversion.html

【讨论】:

【参考方案12】:

当我在这里进入非常大的端口时遇到了类似的问题:

但是当我将其更正为偏移范围内的较小值时:

问题已解决。

【讨论】:

是的,端口号是一个 16 位整数,所以只有 0-65535 可用(0 是保留的,1-1023 只能由 root/admin 用户使用)。【参考方案13】:

我在使用 intellij 2016 版本时遇到了同样的问题:“无法在 localhost:1099 ping 服务器”。

但是,一旦我将它升级到使用“ideaIU-2017.1.exe”安装的 2017 版本(终极 2017.1),问题就消失了。

【讨论】:

【参考方案14】:

我添加了以下虚拟机选项,它对我有用:

-Dcom.sun.management.jmxremote= 
-Dcom.sun.management.jmxremote.port=1099 
-Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false

【讨论】:

【参考方案15】:

查看你使用的tomcat是否兼容Java版本。对我来说,问题是 Tomcat-9 需要 Java-8。如果您有旧版本的 Java,可以使用 Tomcat-7 进行测试。

【讨论】:

这对我来说是个问题。我从 JDK 1.7 更改为 JDK 1.8。在运行/调试配置 --> 编辑工件中。更改了 SDK 版本和项目 SDK【参考方案16】:

我在使用 intellij 15.0 时遇到了这个问题,然后我更新到 15.02 版本。之后,我编辑配置并将默认 JRE 重置为我自己的 JRE。它对我很有效;

【讨论】:

【参考方案17】:

我的问题是 tomcat 8 及更高版本与 java 6 不兼容。更改为 java 7 解决了它。

【讨论】:

更一般地说,Tomcat X 可能与 Java Y 不兼容。请检查 here 以了解版本兼容性。【参考方案18】:

以上答案都不适合我。最后我发现这是一个配置错误(我使用 android SDK 而不是 Java SDK 进行编译)。

去 [右键单击项目] --> 打开模块设置 --> 模块 --> [Dependendecies] 并确保您已配置并选择了 Java SDK(不是 android java sdk)

【讨论】:

【参考方案19】:

我将我的主机名添加到本地主机上的 /etc/hosts。 添加了 JAVA_HOME 但它仍然显示相同的错误。在控制台中,有输出:

Unable to start as CATALINA_BASE contains a colon (:) character

我通过编辑配置 -> 启动/连接 -> 将 CATALINA_BASE 值更改为 tomcat 安装文件夹解决了这个问题。在此之前,它是

CATALINA_BASE:   C:\Program Files\Apache Software Foundation\Tomcat 8.0

这在 linux 机器上是不正确的;)

【讨论】:

这需要更高。我在我的 IntelliJ 中看到了同样的问题,不确定值来自哪里。 intellij里面不需要设置Catalina_home【参考方案20】:

在主机中将我的主机名指向 127.0.0.1(只需在 cmd 中运行 hostname 即可获取它)以及执行 David GC 提到的操作,对我来说,当我进入 tomcat 配置时,错误已清除并且调试工作正常并将调试启动脚本从startup.bat(这只是我胡闹)改回catalina.bat start默认值。

【讨论】:

【参考方案21】:

仅供参考 在某些网络条件下,您的主机名可能会更改或不正确。如果您使用的是 Mac,则以下内容可让您相当永久地设置主机名:

sudo scutil --set HostName correct-name

【讨论】:

这并不能解决问题。对我来说 sudo scutil --get HostName 返回正确的主机名,但 IntelliJ 仍然有 OP 询问的问题。正如@bond 建议的那样,将主机名添加到/etc/hosts,解决了这个问题。 这解决了我的问题!我的主机名包含一个点。我把它设置得尽可能简单;如上所述在主机文件中设置它并且它可以工作。【参考方案22】:

当我配置(错误的)3 Gb 内存但没有内存时,我出现了这个错误。 IntelliJ 确实在输出帧中显示了真正的错误消息(无法为对象堆保留足够的空间)。 我很困惑,并被事件日志中的消息所吸引,在这种情况下将被忽略。

【讨论】:

【参考方案23】:

我通过添加环境变量 JAVA_HOME(C:\Program Files\Java\jdkx.x.x_xx) 和 JRE_HOME 解决了这个问题。

【讨论】:

【参考方案24】:

这似乎是 mac 处理读取 /etc/hosts 文件的方式的问题。例如见http://youtrack.jetbrains.com/issue/IDEA-96865

不需要将主机名添加到主机文件作为绑定描述,但它确实解决了问题。

【讨论】:

【参考方案25】:

要解决此问题,您需要在 /etc/hosts 文件中添加您的机器名称以指向 localhost(127.0.0.1)。

您可以通过运行以下命令找到您的机器名称:

$ hostname
macbook-pro

从上面的输出中您知道您的主机名是“macbook-pro”。 编辑“/etc/hosts”文件并将该名称添加到列出 127.0.0.1 的行的末尾

127.0.0.1 localhost macbook-pro

保存文件。

现在你的 IntelliJ 应该可以启动你的服务器了。

【讨论】:

只是提一下 - 在我的情况下,实际上是 JVM 参数中的一个错字导致了这个 注意:打开 /etc/hosts 文件时使用 sudo,因为它是只读的 我在尝试从 STS“Run As”->“Spring Boot App”运行 Spring Boot 应用程序时遇到了同样的错误。在主机文件中添加指向 localhost 的 Mac 主机名后,它就可以工作了。谢谢邦德! 如果您要给出特定于操作系统的答案,请先提及。

以上是关于IntelliJ,无法启动简单的 Web 应用程序:无法在 localhost:1099 ping 服务器的主要内容,如果未能解决你的问题,请参考以下文章

无法从 IntelliJ IDEA 12.1.4 Ultimate (Windows 7) 启动 Apache Tomcat 6

Intellij IDEA 一个Tomcat启动多个Web的设置

在intellij上无法启动android

IntelliJ IDEA搭建一个web项目含配置tomcat

Spring Boot无法使用intellij idea启动应用程序

visualvm intellij“无法创建与目标应用程序的 JMX 连接”分析不起作用