Skip to content

Commit

Permalink
Build: Suppress JNI warnings from Java 24 for CLI and i2psnark-standa…
Browse files Browse the repository at this point in the history
…lone

and add note to wrapper.config on how to do it there for normal runtime
  • Loading branch information
zzzi2p committed Nov 28, 2024
1 parent f7d2893 commit a1949bf
Show file tree
Hide file tree
Showing 4 changed files with 26 additions and 0 deletions.
5 changes: 5 additions & 0 deletions apps/i2psnark/java/build.xml
Original file line number Diff line number Diff line change
Expand Up @@ -261,6 +261,11 @@
<attribute name="Workspace-Changes" value="${workspace.changes.tr}" />
<attribute name="X-Compile-Source-JDK" value="${javac.version}" />
<attribute name="X-Compile-Target-JDK" value="${javac.version}" />
<!--
Suppress JNI warning in JRE 24+, and eventual restriction
See https://openjdk.org/jeps/472
-->
<attribute name="Enable-Native-Access" value="ALL-UNNAMED" />
<!-- this is so Jetty will report its version correctly -->
<section name="org/eclipse/jetty/server/" >
<attribute name="Implementation-Vendor" value="Eclipse.org - Jetty" />
Expand Down
7 changes: 7 additions & 0 deletions core/java/build.xml
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,13 @@
<attribute name="Workspace-Changes" value="${workspace.changes.tr}" />
<attribute name="X-Compile-Source-JDK" value="${javac.version}" />
<attribute name="X-Compile-Target-JDK" value="${javac.version}" />
<!--
Suppress JNI warning in JRE 24+, and eventual restriction
See https://openjdk.org/jeps/472
This only works for CLI with this as the named -jar argument;
for normal runtime it must be suppressed in wrapper.config
-->
<attribute name="Enable-Native-Access" value="ALL-UNNAMED" />
</manifest>
</jar>
</target>
Expand Down
7 changes: 7 additions & 0 deletions installer/resources/wrapper.config
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,13 @@ wrapper.java.additional.1=-DloggerFilenameOverride=logs/[email protected]
wrapper.java.additional.2=-Di2p.dir.base="$INSTALL_PATH"
wrapper.java.additional.2.stripquotes=TRUE

# Suppress JNI warning in JRE 24+, and eventual restriction
# See https://openjdk.org/jeps/472
# This will fail on JRE 11 or lower, works on JRE 17+
#wrapper.java.additional.3=--enable-native-access=ALL-UNNAMED
# Alternative that _may_ work on all JRE versions:
#set.JDK_JAVA_OPTIONS=--enable-native-access=ALL-UNNAMED

# Prevent the JVM from exporting stats (and thereby causing hundreds of
# ms long pauses during GC)
# http://www.evanjones.ca/jvm-mmap-pause.html
Expand Down
7 changes: 7 additions & 0 deletions router/java/build.xml
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,13 @@
<attribute name="Workspace-Changes" value="${workspace.changes.tr}" />
<attribute name="X-Compile-Source-JDK" value="${javac.version}" />
<attribute name="X-Compile-Target-JDK" value="${javac.version}" />
<!--
Suppress JNI warning in JRE 24+, and eventual restriction
See https://openjdk.org/jeps/472
This only works for CLI with this as the named -jar argument;
for normal runtime it must be suppressed in wrapper.config
-->
<attribute name="Enable-Native-Access" value="ALL-UNNAMED" />
</manifest>
</jar>
</target>
Expand Down

0 comments on commit a1949bf

Please sign in to comment.