Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

jvisualvm does not work on Mac OS X 10.14.4 #1305

Open
davidpcaldwell opened this issue May 20, 2019 · 5 comments

Comments

3 participants
@davidpcaldwell
Copy link

commented May 20, 2019

This appears very similar to issues #1269 and #1270. This is using GraalVM 19.0.0.

$ cat messages.log
-------------------------------------------------------------------------------
>Log Session: Sunday, May 19, 2019 8:34:28 PM EDT
>System Info: 
  Product Version         = Graal VisualVM 19.0.0
  Operating System        = Mac OS X version 10.14.4 running on x86_64
  Java; VM; Vendor        = 1.8.0_212; OpenJDK GraalVM CE 19.0.0 25.212-b03-jvmci-19-b01; Oracle Corporation
  Runtime                 = OpenJDK Runtime Environment 1.8.0_212-20190420112649.buildslave.jdk8u-src-tar--b03
  Java Home               = /Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre
  System Locale; Encoding = en_US (visualvm); UTF-8
  Home Directory          = /Users/inonit
  Current Directory       = /Users/inonit/src/inonit/slime
  User Directory          = /Users/inonit/Library/Application Support/VisualVM/graalvm/19.0.0
  Cache Directory         = /Users/inonit/Library/Caches/VisualVM/graalvm/19.0.0
  Installation            = /Users/inonit/src/inonit/slime/local/jsh/lib/graal/lib/visualvm/visualvm
                            /Users/inonit/src/inonit/slime/local/jsh/lib/graal/lib/visualvm/platform
  Boot & Ext. Classpath   = /Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/resources.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/rt.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/sunrsasign.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/jsse.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/jce.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/charsets.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/jfr.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/jvmci-services.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/classes:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/boot/graaljs-scriptengine.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/boot/graal-sdk.src.zip:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/boot/graal-sdk.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/ext/sunec.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/ext/nashorn.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/ext/cldrdata.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/ext/dnsns.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/ext/localedata.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/ext/sunjce_provider.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/ext/sunpkcs11.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/ext/jaccess.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/ext/zipfs.jar:/System/Library/Java/Extensions/MRJToolkit.jar
  Application Classpath   = /Users/inonit/src/inonit/slime/local/jsh/lib/graal/lib/visualvm/platform/lib/boot.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/lib/visualvm/platform/lib/org-openide-modules.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/lib/visualvm/platform/lib/org-openide-util-lookup.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/lib/visualvm/platform/lib/org-openide-util-ui.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/lib/visualvm/platform/lib/org-openide-util.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/lib/dt.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/lib/tools.jar
  Startup Classpath       = /Users/inonit/src/inonit/slime/local/jsh/lib/graal/lib/visualvm/platform/core/org-netbeans-libs-asm.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/lib/visualvm/platform/core/asm-all-5.0.1.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/lib/visualvm/platform/core/org-openide-filesystems.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/lib/visualvm/platform/core/core.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/lib/visualvm/platform/core/core-base.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/lib/visualvm/visualvm/core/org-graalvm-visualvm-modules-startup.jar:/Users/inonit/src/inonit/slime/local/jsh/lib/graal/lib/visualvm/visualvm/core/locale/core_visualvm.jar
-------------------------------------------------------------------------------
java.lang.UnsatisfiedLinkError: /Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/libfontmanager.dylib: dlopen(/Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/libfontmanager.dylib, 1): Library not loaded: /opt/X11/lib/libfreetype.6.dylib
  Referenced from: /Users/inonit/src/inonit/slime/local/jsh/lib/graal/jre/lib/libfontmanager.dylib
  Reason: image not found
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1941)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1845)
        at java.lang.Runtime.loadLibrary0(Runtime.java:870)
        at java.lang.System.loadLibrary(System.java:1122)
        at sun.lwawt.macosx.LWCToolkit$1.run(LWCToolkit.java:93)
        at sun.lwawt.macosx.LWCToolkit$1.run(LWCToolkit.java:80)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.lwawt.macosx.LWCToolkit.<clinit>(LWCToolkit.java:79)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:264)
        at java.awt.Toolkit$2.run(Toolkit.java:860)
        at java.awt.Toolkit$2.run(Toolkit.java:855)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:854)
        at java.awt.Window.getToolkit(Window.java:1358)
        at java.awt.Window.init(Window.java:506)
        at java.awt.Window.<init>(Window.java:537)
        at java.awt.Frame.<init>(Frame.java:420)
        at org.netbeans.core.startup.Splash.setRunning(Splash.java:133)
        at org.netbeans.core.startup.Main.start(Main.java:271)
        at org.netbeans.core.startup.TopThreadGroup.run(TopThreadGroup.java:98)
        at java.lang.Thread.run(Thread.java:748)
@dougxc

This comment has been minimized.

Copy link
Member

commented May 20, 2019

I cannot reproduce this on my Mac (which is also running macOS 10.14.4). Where is the message.log file located? Who produces that file? I'd like to compare mine to yours.

@dougxc dougxc self-assigned this May 20, 2019

@davidpcaldwell

This comment has been minimized.

Copy link
Author

commented May 20, 2019

Mine is at: ~/Library/Application Support/VisualVM/graalvm/19.0.0/var/log

@dougxc

This comment has been minimized.

Copy link
Member

commented May 20, 2019

One interesting difference I see is:

  Java Home               = /Library/Java/JavaVirtualMachines/graalvm-ce-19.0.0/Contents/Home/jre

The layout of GraalVM on macOS always has a Contents/Home so I'm wondering where yours went.
I wanted to see which dynamic libraries jvisualvm loads with env DYLD_PRINT_LIBRARIES=1 jvisualvm but for some reason, that produces no output.

@MartinBalin can you please get someone on the VisualVM team to investigate this further.

@davidpcaldwell

This comment has been minimized.

Copy link
Author

commented May 20, 2019

My installer installs the GraalVM equivalent of JAVA_HOME to an arbitrary directory. It downloads the .tar.gz and extracts the graalvm-*-*/Contents/Home directory to a path for my JavaScript launcher environment to pick it up. (Currently, Nashorn bootstraps a GraalVM subprocess since the implementation currently relies on threads to consume stdout,stderr and so forth.)

@MartinBalin

This comment has been minimized.

Copy link
Member

commented May 21, 2019

This is known issue caused by how openjdk was built for GraalVM, you need to install some XWindows, e.g. xquartz.org on MacOS in order to run any Swing app on top of graalvm https://www.graalvm.org/docs/release-notes/known-issues/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.