You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tinkerpop.apache.org by "Lawrence Ong (Jira)" <ji...@apache.org> on 2022/08/25 22:45:00 UTC

[jira] [Comment Edited] (TINKERPOP-2729) Gremlin Console fails to start on ARM Mac with ARM Java

    [ https://issues.apache.org/jira/browse/TINKERPOP-2729?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17585054#comment-17585054 ] 

Lawrence Ong edited comment on TINKERPOP-2729 at 8/25/22 10:44 PM:
-------------------------------------------------------------------

For those on Apple M1 and running into this issue, all I've done to resolve the error is to upgrade jansi to the latest version (2.4.0).  ie.
{code:java}
cd $PATH_TO_GREMLIN_CONSOLE/lib
curl -O https://repo1.maven.org/maven2/org/fusesource/jansi/jansi/2.4.0/jansi-2.4.0.jar{code}
However, I did run into issues with JDK17 right after (Unsupported class file major version 61).  This was solved by upgrading groovy libs as well to the latest 2.5.x version.

 


was (Author: JIRAUSER294964):
For those on Apple M1 and running into this issue, all I've done to resolve the error is to upgrade jansi to the latest version (2.4.0).  ie.

 
{code:java}
cd $PATH_TO_GREMLIN_CONSOLE/lib
curl -O https://repo1.maven.org/maven2/org/fusesource/jansi/jansi/2.4.0/jansi-2.4.0.jar{code}
However, I did run into issues with JDK17 right after (Unsupported class file major version 61).  This was solved by upgrading groovy libs as well to the latest 2.5.x version.

 

> Gremlin Console fails to start on ARM Mac with ARM Java
> -------------------------------------------------------
>
>                 Key: TINKERPOP-2729
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-2729
>             Project: TinkerPop
>          Issue Type: Bug
>          Components: console
>    Affects Versions: 3.5.2
>            Reporter: John Ruble
>            Priority: Minor
>
> Trying to use Gremlin Console with Java 18 on an M1 Mac throws a {{no jansi in java.library.path}} error, similar to https://issues.apache.org/jira/browse/TINKERPOP-2584. This happens with both Oracle and OpenJDK.
> Notably ARM OpenJDK 18 is what you currently get when you {{brew install java}} on a new Mac, so that's probably what most users will have.
> Here's a sample project to repro this on an M1 Mac:
> [https://github.com/jrr/gremlin-console-jvms]
>  
> {code:java}
> jrr@jrrmbp ~/r/gremlin-console-jvms (main)> make test_openjdk_18_arm 
> (...)
> file `which java`
> /Users/jrr/repos/gremlin-console-jvms/.jdks/openjdk_18_arm/jdk-18.jdk/Contents/Home/bin/java: Mach-O 64-bit executable arm64
> java -version
> openjdk version "18" 2022-03-22
> OpenJDK Runtime Environment (build 18+36-2087)
> OpenJDK 64-Bit Server VM (build 18+36-2087, mixed mode, sharing)
> (...)
> .gremlin-console/apache-tinkerpop-gremlin-console/bin/gremlin.sh
> Exception in thread "main" java.lang.UnsatisfiedLinkError: Could not load library. Reasons: [no jansi in java.library.path: /Users/jrr/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:., Can't load library: /var/folders/f1/5hh6j9fd7mv6dm1hdrzzh7_w0000gn/T/libjansi-64-9334025133467737627.jnilib]
>     at org.fusesource.hawtjni.runtime.Library.doLoad(Library.java:182)
>     at org.fusesource.hawtjni.runtime.Library.load(Library.java:140)
>     at org.fusesource.jansi.internal.CLibrary.<clinit>(CLibrary.java:42)
>     at org.fusesource.jansi.AnsiConsole.wrapOutputStream(AnsiConsole.java:48)
>     at org.fusesource.jansi.AnsiConsole.<clinit>(AnsiConsole.java:38)
>     at java.base/java.lang.Class.forName0(Native Method)
>     at java.base/java.lang.Class.forName(Class.java:488)
>     at java.base/java.lang.Class.forName(Class.java:467)
>     at org.codehaus.groovy.runtime.callsite.CallSiteArray$1.run(CallSiteArray.java:67)
>     at org.codehaus.groovy.runtime.callsite.CallSiteArray$1.run(CallSiteArray.java:64)
>     at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
>     at org.codehaus.groovy.runtime.callsite.CallSiteArray.createCallStaticSite(CallSiteArray.java:64)
>     at org.codehaus.groovy.runtime.callsite.CallSiteArray.createCallSite(CallSiteArray.java:161)
>     at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)
>     at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:115)
>     at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:119)
>     at org.apache.tinkerpop.gremlin.console.Colorizer.installAnsi(Colorizer.groovy:32)
>     at org.apache.tinkerpop.gremlin.console.Colorizer$installAnsi.call(Unknown Source)
>     at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)
>     at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:115)
>     at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:119)
>     at org.apache.tinkerpop.gremlin.console.Console.<clinit>(Console.groovy:61)
> make[1]: *** [gremlin-console] Error 1
> make: *** [test_openjdk_18_arm] Error 2 {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)