我一直盗号,现在google搜索了一会儿,我发现,好像他们是旧版本的IntelliJ的,与各种应用服务器写了几statck溢出线程。 通常他们会告诉你进入
java -Xdebug -Xrunjdwp:transport=dt_socket,address=51887,suspend=n,server=y
一个答案建议使用类似
-agentlib:jdwp:transport=dt_socket,address=51887,suspend=n,server=y
但后来我得到这个:
Error occurred during initialization of VM
Could not find agent library: libjdwp:transport.jnilib (searched /Library/Java/JavaVirtualMachines/1.6.0_37-b06-434.jdk/Contents/Libraries:/System/Library/Java/Extensions:/Library/Java/Extensions:.)
然后,一个或另一个的上面,他们告诉你大概是“编辑配置>码头>远程和本地主机输入,51887”(端口号而异)后,
然而,在12,你的土地你选择远程后的页面有一个选项过多,并要求JNDI接口,它实际上表明上述JDWP参数另一个选项卡上没有JDWP端口。
研究的JNDI端口位,通常会得到指令,这样ARGS添加到您的命令行...
-Dcom.sun.management.jmxremote= \
-Dcom.sun.management.jmxremote.port=1099 \
-Dcom.sun.management.jmxremote.ssl=false \
-Dcom.sun.management.jmxremote.authenticate=false\
我已经做了太多,我可以看到端口1099的Java(使用lsof的),我可以telnet到1099举行,所以我知道JVM是听。 (我们会尽量不担心出现地说,打开一个端口,通过该人没有密码通过网络传送到您的计算机安装任意的Java代码的事实)
然而,在的IntelliJ每当我试图部署和调试它给了我下面的消息:
我可以看到Java RMI的通信超过1099时,我探听口1099使用Wireshark(但他们难以辨认)。 显然,通信不适合的IntelliJ理想,所以我想知道如果有件事情我需要做的码头让它发挥好。 请注意,更改Jetty的版本不是目前的选择,所以我们不要去那里:)。
我也试图消除神器,禁止令,并试图只需连接调试器,但它仍然给我相同的红色气球和错误信息,所以显然是必需的JNDI(端口1099)的一部分。
有谁看到的东西我做错了,或知道的别的东西我应该做的就是这个工作?
(我想知道,如果它是与此类似: http://youtrack.jetbrains.com/issue/IDEA-65746 JBoss的问题)
编辑:多亏了这个谷歌网上论坛帖子 ,我发现这是可能得到,如果你不指定编辑配置> +>码头>远程调试器连接,而是选择编辑配置> +>远程,但调试和部署是我后让只有一半的解决方案。