developers

    Forum Stats

  • 3,873,880 Users
  • 2,266,627 Discussions
  • 7,911,650 Comments

Discussions

Java Mission Control on Windows 10 cannot see JVMs with user with a 9 character name.

3597081
3597081 Member Posts: 2
edited Dec 6, 2017 7:15AM in Java Mission Control

Java Mission Control error
:

From the FAQ:

Q: I cannot see any locally running JVMs in the JVM browser!

A1: Are you running in Eclipse? If so, make sure you run your Eclipse on a JDK, NOT a JRE!

A2: You should have a directory named hsperfdata_<user> in your tmp directory, where <user> is your login. (On windows you should be able to find this folder under C:\Users\myuser\AppData\Local\Temp\hsperfdata_myuser.) Make sure that the directory can be written to. Also make sure that you are using a file system that supports ACLs.

A3: Double check the JAVA_HOME/lib/missioncontrol/jmc.ini file, the line after '-vm' should not be empty, but say './' (without the quotes). If you see this behavior, please write a post in this forum, so we can get gain some more understanding of this weird issue.

In my case the jmc.ini did not have the ./ after the -vm in the ini file.

Even after adding the ./ after -vm, Java Mission Control could not find the JVMs.

I did have the directory C:\Users\LongUserName\AppData\Local\Temp\hsperfdata_LongUserName

however the tmp pointed to C:\Users\LongUs~2\Appdata\temp so the Java Mission Control could not find the hsperfdata_LongUserName because the paths were different.

Seems that the JDK 8 U144 did not work on Windows 10 with a long user name.   Is there a work around? 

Logging in as a user with a short name (8 characters or less) it worked.

Note:   I will try the latest update, 151.

Scott D.

Answers

  • Klara Ward, Java Mission Control Dev-Oracle
    edited Dec 2, 2017 7:48AM

    I've not heard about this issue before, but I can see that it could happen.

    If you run JDK\bin\jps or JDK\bin\jcmd (logged in as longusername), do you see any java processes listed?

    This uses the same attach functionality, so I'm guessing it will have the same problem.

    If you can't see any processes as longusername, but can see them with shortusr, this means that it a core JDK problem.

    I tried searching the JDK bug database, but didn't find anything immediately.

  • 3597081
    3597081 Member Posts: 2
    edited Dec 5, 2017 4:01PM

    Results of running jcmd:

    From LongUserName login:

    Windows 10 version 1607

    C:\Program Files\Java\jdk1.8.0_144\bin>

    C:\Program Files\Java\jdk1.8.0_144\bin>jcmd.exe

    5100 sun.tools.jcmd.JCmd

    Windows 10 version 1607

    From Shrtname login:

    C:\Program Files\Java\jdk1.8.0_144\bin>jcmd

    3020 sun.tools.jcmd.JCmd

    From A Windows 7 64 bit machine LongUserName:

    C:\Program Files\Java\jdk1.8.0_144\bin>jcmd

    6000

    3348 sun.tools.jcmd.JCmd

  • Klara Ward, Java Mission Control Dev-Oracle
    edited Dec 6, 2017 7:15AM

    Can you doublecheck the value for -vm once JMC has started? Go into menu Help/Installation Details and click on the Configuration tab,

    under -vm the value should be something like "d:\Java\8u144\bin\\.\..\jre\bin\server\jvm.dll", most importantly, pointing to a jvm.dll inside a JDK installation.

    Can jconsole see any local jvms with the longusername user?

This discussion has been closed.
developers