加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

无法在Windows 7上运行作为服务的Tomcat7使用JVisualVM分析

发布时间:2020-12-13 20:53:45 所属栏目:Windows 来源:网络整理
导读:我正在使用在本地运行的JVisualVM(JDK 1.7.0 – 06,64位),在Apache Tomcat(7.0.34)中配置一个作为Windows 7(64位)服务的Servlet。 最初,由于不同的“java.io.tmp”属性bug /功能,Tomcat没有显示在本地应用程序列表中,而是在本论坛的几个帖子中提供了解决
我正在使用在本地运行的JVisualVM(JDK 1.7.0 – 06,64位),在Apache Tomcat(7.0.34)中配置一个作为Windows 7(64位)服务的Servlet。

最初,由于不同的“java.io.tmp”属性bug /功能,Tomcat没有显示在本地应用程序列表中,而是在本论坛的几个帖子中提供了解决方法。

然而,尽管Tomcat进程现在在本地应用程序列表中显示为“本地应用程序”,但是当我打开进程时,没有用于监视器,线程,采样器或配置文件的选项卡 – 只有“JVM参数”和“系统属性”子项的“概览”选项卡-tabs显示可怕的“不支持此jvm”消息。

我仔细检查了以下项目:

> Tomcat和JVisualVM都通过查看JVisualVM中的JVM属性(使用Tomcat的JMX连接)运行相同版本的Java,
> Tomcat和JVisualVM都通过查看JVisualVM中的系统属性(再次使用Tomcat的JMX连接)并查看实际的TMP / TEMP目录,并确认PID文件为都存在
>文件系统是NTFS
> Windows用户在名称中没有下划线(注意:用户在名称中有一段时间,因为我们使用的形式为“firstname.lastname”的网络登录名,但是我没有查看其他Java应用程序的问题所以不要以为这是一个问题)
>通过查看任务管理器中的进程,Tomcat和JVisualVM都将作为同一Windows用户执行

最后几点:

>我需要配置Servlet,所以使用JMX是不够的
>我能够在Windows XP机器(Java 7,Tomcat 7作为服务)上进行配置,所以似乎是Windows 7/64位的东西?

如果有人已经明确地解决了这个问题,解决方案将不胜感激。但是,只要知道其他人是否运行相同的配置 – Windows 7 64位,Java 7 64位,作为服务运行的Tomcat 7,这将是有用的。

更新:而不是作为服务运行,我使用批处理文件运行Tomcat,并且都运行良好:运行作为服务是什么?

你几乎做了“”而不是作为一个服务运行,我使用批处理文件运行Tomcat,并且都运行良好:运行作为服务是什么“现在唯一的一个步骤是运行JVisualVM作为服务:)

请参考

https://blogs.oracle.com/nbprofiler/entry/monitoring_java_processes_running_as

由于只能在与VisualVM相同的用户下运行的Java进程可以进行概要分析,因此只能将Windows服务(默认运行在系统帐户下)配置为Windows服务。请注意,由于安全性限制,这种方法在Windows Vista上不起作用,默认情况下会阻止服务显示任何UI。

另一个选项是运行CMD.EXE作为本地系统运行,请参考下面。

http://vicevoice.blogspot.in/2009/09/vaas-visualvm-as-service.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读