Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么jstatd没有回应?_Java - Fatal编程技术网

Java 为什么jstatd没有回应?

Java 为什么jstatd没有回应?,java,Java,我正在尝试在linux上启动jstatd。这就是我所做的 1) 创建文件jstatd.all.policy grant codebase "file:/home/ailiu/jdk1.6.0_24/lib/tools.jar" { permission java.security.AllPermission; }; 2) 确保tools.jar存在于特定路径 /home/ailiu/jdk1.6.0_24/lib/tools.jar 3) 运行jstatd作为 ./jstatd -J-

我正在尝试在linux上启动jstatd。这就是我所做的

1) 创建文件
jstatd.all.policy

grant codebase "file:/home/ailiu/jdk1.6.0_24/lib/tools.jar" {
    permission java.security.AllPermission;
};
2) 确保
tools.jar
存在于特定路径
/home/ailiu/jdk1.6.0_24/lib/tools.jar

3) 运行jstatd作为

./jstatd -J-Djava.security.policy=jstatd.all.policy
执行只是挂起,根本没有响应

我试过JDK1.7和1.6,都是一样的

4) jps可以看到jstatd的过程以及其他java程序


有什么帮助吗?非常感谢。

jstatd
做了它应该做的事情:它是一个打算在后台运行的守护程序。它将在等待网络请求时运行,直到终止。你期待什么


jps
可以在不使用
jstatd
的情况下显示本地java进程。您可以通过使用
jps hostname
来尝试
jstatd
是否运行,其中hostname不应该是
localhost
,也就是说,它应该是运行
jstatd
的机器的网络可见名称。

谢谢您的回复,霍尔格。然而,从另一个问题线索可以看出,“输出将如下所示:-[1]12195”。如果没有输出(如我所见),那么如何判断哪个端口用于RMI注册表?如果不指定自己的端口,将使用标准端口。您不必关心它,因为如果您不指定自己的端口,所有工具都将使用该标准端口。但是为了完整性:默认端口号是
1099
再次感谢您,霍尔格。然而,我使用默认端口1099尝试了jstat,但它不起作用。而且,我仍然希望jstatd返回一个端口号,即使它是默认的端口号。它不应该挂在那里。Deamon程序可以在后台运行,但不必挂起。对吗?试着运行jstatd作为
/jstatd-J-Djava.security.policy=jstatd.all.policy&