相关疑难解决方法(0)

由于权限错误无法启动jstatd

我尝试在linux机器上运行jstatd jvm监控工具

jboss@hostAddr:/usr/java/jdk1.6.0_18/bin> uname -a
Linux hostAddr 2.6.16.60-0.34-smp #1 SMP Fri Jan 16 14:59:01 UTC 2009 x86_64 x86_64 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)

使用以下命令:

jstatd -J-Djava.security.policy=~/jstatd.all.policy
Run Code Online (Sandbox Code Playgroud)

jstatd.all.policy内容

grant codebase "file:${java.home}/../lib/tools.jar" {

   permission java.security.AllPermission;

};
Run Code Online (Sandbox Code Playgroud)

不幸的是我得到以下输出:

Could not create remote object
access denied (java.util.PropertyPermission java.rmi.server.ignoreSubClasses write)
java.security.AccessControlException: access denied (java.util.PropertyPermission java.rmi.server.ignoreSubClasses write)
        at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)
        at java.security.AccessController.checkPermission(AccessController.java:546)
        at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
        at java.lang.System.setProperty(System.java:725)
        at sun.tools.jstatd.Jstatd.main(Jstatd.java:122)
Run Code Online (Sandbox Code Playgroud)

出于某种原因,jstatd在具有相同命令和策略文件的Windows上成功运行.

Linux java版:

java version "1.6.0_18"
Java(TM) SE Runtime Environment (build 1.6.0_18-b07)
Java HotSpot(TM) 64-Bit Server VM (build 16.0-b13, mixed mode)
Run Code Online (Sandbox Code Playgroud)

Windows …

java jvm

53
推荐指数
3
解决办法
6万
查看次数

标签 统计

java ×1

jvm ×1