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

load is native and has no overriding implementation #66

Open
agilesw opened this issue Nov 21, 2023 · 6 comments
Open

load is native and has no overriding implementation #66

agilesw opened this issue Nov 21, 2023 · 6 comments
Assignees

Comments

@agilesw
Copy link

agilesw commented Nov 21, 2023

macbook m1 arm cpu
RunGuidDemoHash1

This is the Java Bytecode Symbolic Executor's Run Tool (Assembles a jar archive containing the classes of the 'main' feature. v.0.11.0-SNAPSHOT).
Connecting to Z3 at /opt/homebrew/bin/z3.
Initializing guidance by driver method guid/hash_1/GuidDemoHash1:()V:guidanceStart.
Failed guidance, cause: jbse.algo.exc.NotYetImplementedException: Method java/lang/ClassLoader$NativeLibrary:(Ljava/lang/String;ZZ)V:load is native and has no overriding implementation.
Connection failed, cause: jbse.common.exc.UnexpectedInternalException: jbse.algo.exc.NotYetImplementedException: Method java/lang/ClassLoader$NativeLibrary:(Ljava/lang/String;ZZ)V:load is native and has no overriding implementation..

why “ java/lang/ClassLoader$NativeLibrary:(Ljava/lang/String;ZZ)V:load is native and has no overriding implementation”?
how to resolve

@pietrobraione pietrobraione self-assigned this Nov 22, 2023
@pietrobraione
Copy link
Owner

It is possible that in the latest version of Java some native methods were moved. Can you tell me which version of Java 8 are you running JBSE on?

@agilesw
Copy link
Author

agilesw commented Nov 23, 2023

It is possible that in the latest version of Java some native methods were moved. Can you tell me which version of Java 8 are you running JBSE on?

java version "1.8.0_371"
Java(TM) SE Runtime Environment (build 1.8.0_371-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.371-b11, mixed mode

@agilesw
Copy link
Author

agilesw commented Nov 23, 2023

the same problem on:
java version "1.8.0_391"
Java(TM) SE Runtime Environment (build 1.8.0_391-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.391-b13, mixed mode)

@pietrobraione
Copy link
Owner

It's quite natural that, if JBSE doesn't work on a version of Java 8, it also won't on a later version. I have JDK 1.8.0_312 and even on my setup there are some examples (e.g., golo) that do not longer work. Unfortunately JBSE depends on the internals of the JDK, and these are easily subject to breaking changes from one version to the next one. In the future I will bump the JDK to the last version and update JBSE so it works with it. In the meantime I can only suggest to downgrade the JDK to Temurin 1.8.0_302 (the oldest available on the Adoptium website) and try again.

@pietrobraione
Copy link
Owner

I did a commit that fixed an issue with JDK 1.8.0_312 and I have checked the example on it, and it works. Until I find time to upgrade JBSE to work with 1.8.0_391 I kindly suggest to downgrade to that version of the JDK.

@agilesw
Copy link
Author

agilesw commented Nov 27, 2023

I have tasted, can work in:
openjdk version "1.8.0_312"
OpenJDK Runtime Environment (Zulu 8.58.0.13-CA-macos-aarch64) (build 1.8.0_312-b07)
OpenJDK 64-Bit Server VM (Zulu 8.58.0.13-CA-macos-aarch64) (build 25.312-b07, mixed mode)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants