通过WebStart启动JConsole

时间:2013-04-26 13:55:56

标签: java java-web-start jconsole

我想知道是否可以通过网络启动启动JConsole。

例如,我有一个Web应用程序,当用户单击一个按钮(具有IP:JMX端点的PORT)时,我想启动JConsole,以便用户能够监视特定的JMX端点。

在我的服务器中我安装了Java,所以我认为这是可能的。

之前是否有人试图这样做。考虑到我想推出一个非由我开发的应用程序,我会有任何问题吗?

提前致谢。

编辑我 .jnlp文件如下

<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="" href="">    
    <information>        
        <title>JConsole Web Start</title>        
        <vendor>User</vendor>    
    </information>        
    <security>         
        <all-permissions />    
    </security>        
    <resources>        
        <j2se version="1.6+" initial-heap-size="150m" max-heap-size="512m" />        
        <jar href="http://127.0.0.1/jconsole.jar" main="true" />    
    </resources>    
    <application-desc name="sun.tools.jconsole.JConsoleWebStart" 
main-class="sun.tools.jconsole.JConsole" width="300" height="300">        
        <argument><![CDATA[hostname:port]]></argument>    
    </application-desc>
</jnlp>

我发现这可行。但是,它不能与Java 7一起使用,为&#34;主类的错误包名&#34; 抛出异常。我试过Java 6并且正常工作,无法真正理解原因。

编辑II: 最后我发现上面.jnlp无法从Java 7开始的原因是主类的 sun.tools.jconsole 包名。似乎Java7不喜欢以sun开头的包名。因此,我创建了自己的jar,实际上将jconsole包裹在里面并且它可以工作。

0 个答案:

没有答案