我正在尝试启动并运行 JProfiler 的简单本地主机 session 。我已经创建了 session ,主机是 127.0.0.1,端口是默认的 8849,我已经将启动/关闭命令指向我本地的 tomcat 安装 startup.sh/shutdown.sh。我单击“确定”,得到“连接到 127.0.0.1:8849”,150 秒后(我修改了超时)它超时并显示:
无法连接到 127.0.0.1:8849。请确保远程地址正确,远程程序正常启动,网络路由允许socket连接。
地址不可能是错误的,我已经验证(ps -ef|grep tomcat)进程已经启动,还检查了tomcat日志,它正在等待请求:
INFO: Starting Coyote HTTP/1.1 on http-8080
Apr 15, 2011 7:49:13 AM org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
Apr 15, 2011 7:49:13 AM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/21 config=null
Apr 15, 2011 7:49:13 AM org.apache.catalina.startup.Catalina start
INFO: Server startup in 47312 ms
我还需要做些什么来打开端口吗?例如,我是否应该修改传递给 tomcat 的 JAVA_OPTS?
最佳答案
是的。 你需要这样的东西(对于 OS X)
export JAVA_OPTS="-agentlib:jprofilerti=port=8849 \
-Xbootclasspath/a:/Applications/jprofiler5/bin/agent.jar"
export DYLD_LIBRARY_PATH=/Applications/jprofiler5/bin/macos
通常当您通过 JProfiler 中的向导配置新 session 时,它会告诉您需要输入的确切参数。
对我来说,这个向导是 StartCenter -> New Session ,然后选择“New remote integration”。 然后这将询问本地/远程、启动模式、jvm 类型、分析端口,并在第 6 页上说“执行所需的修改”并列出这些内容。
或者,您可以从菜单栏中选择“集成向导”。
关于java - 简单的 Jprofiler 设置不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5678557/