最近在深入JVM,这就不得不用到JDK的免费工具如jps,jsonsole等等.....
前提当然是安装好JDK和配置好java在windows下的环境变量。配置环境变量这里就不说了,百度一抓一大把,随便打开一个看就可以了。
好了,准备就绪后就cmd执行jps。奇怪的事情发生了。就算我本地运行着activemq和一些web程序,jps也完全无视,根本就不给我输出任何东西,没有任何错误,连jps本身的进程也不给我列出来。
我开始排查这里面的原因,第一个JDK版本的问题?非也,在JDK版本是1.4的linux上面也可以顺利执行。我这个好歹还是JDK1.6,但是听说JDK1.6有个别版本存需要手动打开JMX管理,好吧,那个我目前还不大了解,那我就直接不用JDK1.6了,干脆上oracle上面下了个x86的JDK1.7,因为我的系统是32位的windows xp。
我把环境变量的JAVA_HOME备份了一下,重新指定了安装好的JDK1.7,问题依旧没有得到解决。难不成是环境变量的问题?我java -version了一下,是我最新配置的1.7版本。然后我继续将JDK lib下的tools.jar重命名了下。然后jps。这时候给我提示说找不到程序执行的主类。证明系统的环境变量是设置对的。起码jps的时候他知道去tools.jar上面去找。
接着我大致了解了下jps这个工具的工作原理,它跟jconsole是一样的。都是需要在环境变量的TMP目录里面去找一个名字叫hsperfdata_{当前登录账户}的文件夹,读取存储在里面的进程信息。要是嫌麻烦,可以直接在开始运行里面输入%TMP%,这样就能定位到tmp文件夹下了。这个时候问题貌似浮出水面了。那个文件夹下根本没有hsperfdata_***的文件夹。为什么会没有呢?
我在google上面查了很久,终于在一篇国外的帖子上看到系统盘是FAT32的话是无法创建hsperfdata_***文件夹的,至于为什么,那上面也没说。我只是想用jps工具,其他的无关紧要,我一直都没太在意我的系统盘是什么格式的,原来还真是FAT32的。。。。。。
朋友们,要是你们有心思看完我这么多废话之后,我抱歉的给你说一句,问题恰恰就是这里。有心的朋友们大概已经知道怎么样去解决了。最笨的方法是重装系统,把系统盘用NTFS格式化了。
我先想,我的TMP目录是在FAT32下面,要是将JDK也装到那个系统盘上面会不会就好了呢?答案是否定了,要是有人跟我有一样奇葩想法的人我用实际行动告诉你,不行的。
另外如果你想修改环境变量将TMP重新指定到NTFS的磁盘下面,也是不行的,只要操作系统盘是FAT32的都不行。
好吧。。。。。。正题来了。对于这个只需要这样解决。将系统盘用命令转换为NTFS格式。如下:
进入cmd,敲入此命令convert c: /FS:NTFS
重启下机器,成功。
要是提示说要输入磁盘卷标名称,就输入磁盘在“我的电脑”上面显示的名字即可。
分享到:
相关推荐
安装完成后,开发者可以在命令行中使用`javac`进行编译,`java`命令来运行程序,以及其他开发工具,如`javadoc`生成文档,`jps`查看进程,`jconsole`进行性能监控等。 在实际开发中,JDK 8u271不仅对Java程序员至关...
此外,JDK还提供了许多其他实用工具,如`javadoc`用于生成API文档,`jps`列出运行中的Java进程,`jmap`用于内存分析,`jconsole`提供图形化的监控界面等。 在Windows系统上,JDK的安装通常会涉及到环境变量的配置,...
Java Development Kit(JDK)是Java编程语言的核心组件,它为开发者提供了编译、调试和运行Java应用程序所需的所有工具。"jdk-8u301-windows-x64.rar" 是一个针对Windows 64位操作系统的JDK 1.8更新301的压缩包文件...
这个压缩包包含了JDK的所有必要组件,便于开发者在64位Windows环境下进行Java编程。 JDK的核心组成部分包括: 1. **Java编译器**(javac):这是将源代码(.java文件)转换为字节码(.class文件)的工具,字节码...
安装后,开发者可以获得完整的Java开发环境,包括编译器javac、解释器java以及各种工具,如javadoc(用于生成API文档)、jps(查看Java进程)、jconsole(监控Java应用性能)等。 总的来说,这个压缩包提供了一个...
此外,JDK还包含许多其他工具,如javadoc(用于生成API文档)、jps(Java进程查看器)、jmap(内存映射工具)和jconsole(JVM监控和管理工具)等,它们对于开发者进行性能分析、内存调试等工作至关重要。 标签“JDK...
Java Development Kit(简称JDK)是Oracle公司提供的用于开发和运行Java应用程序的工具包,它包含了Java编译器、Java虚拟机(JVM)、Java类库以及一些其他必要的工具。在Windows操作系统上安装JDK是进行Java编程的第...
7. **其他工具**:如appletviewer、apt、extcheck、idlj、jarsigner、jconsole、jdb、jdwp、jhat、jinfo、jmap、jmc、jps、jrunscript、jstack、jstat、jstatd等,它们提供了各种附加功能,如性能监控、内存分析等。...
8. **JVM监控与诊断工具**:JDK提供了一系列工具(如jps、jstat、jmap、jhat、jconsole等)用于监控JVM状态、分析内存泄漏、诊断线程问题等,这些工具是优化和调试Java应用的重要助手。 9. **JNI与本地方法**:Java...
《Java虚拟机(第二版)》一书涵盖了Java开发与运行环境的核心部分——Java虚拟机(JVM)的深入解析。这本书旨在帮助读者理解JVM的工作原理,优化Java应用程序的性能,并解决运行时可能出现的问题。 Java自1995年...
Java虚拟机(JVM)是Java程序运行的基础,它提供了内存管理、类加载、执行引擎等核心功能。...通过工具如`jps`、`jmap`、`jconsole`和`jvisualvm`,可以监控和分析JVM的运行状态,以便进行有效的性能调优。
JDK 8是Java的一个重要版本,它包含了Java编译器(javac)、Java运行时环境(JRE)、Java API文档以及一系列开发工具,如JConsole、VisualVM等。更新281是对JDK 8的维护版本,主要修复了已知的安全漏洞和性能问题,...
在Java开发过程中,JDK提供了一系列内置的调试工具,这些工具对于优化性能、排查问题以及理解JVM(Java虚拟机)内部运作至关重要。本篇将详细介绍JDK自带的几个主要调试工具,包括`jmap`、`jstack`、`jconsole`,...
安装JDK 8u301后,可以使用Java编译器(javac)来编译源代码,使用Java虚拟机(java)来运行程序,使用Javadoc(javadoc)生成API文档,使用JAR(jar)工具打包和管理类库,以及使用JPS、JVM Tools(如jmap、jstack...
JDK是Oracle公司提供的用于开发和运行Java应用程序的工具集,包括了Java编译器、Java虚拟机(JVM)、Java类库以及各种开发工具。本宝典将通过丰富的实例,帮助开发者掌握JDK的各项功能,提升编程技能。 首先,我们...
这本书的内容是帮你全面了解java虚拟机,本书第1版两年内印刷近10次,98%以上的评论全部为5星级的好评,是整个Java图书领域公认的经典著作和超级畅销书,繁体版在台湾也十分受欢迎。第2版在第1版的基础上做了很大的...