Skip to content

Commit f98b272

Browse files
committed
Update to NetBeans 26 and add workaround for GraalVM JDK 24
1 parent 80dfcb8 commit f98b272

File tree

4 files changed

+21
-8
lines changed

4 files changed

+21
-8
lines changed

compiler/mx.compiler/mx_graal_tools.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -96,17 +96,17 @@ def igv(args):
9696
9797
"""
9898
v17 = mx.VersionSpec("17")
99-
v23 = mx.VersionSpec("23")
99+
v25 = mx.VersionSpec("25")
100100
def _igvJdkVersionCheck(version):
101-
return v17 <= version < v23
101+
return v17 <= version < v25
102102

103103
jdkhome = None
104104
if not '--jdkhome' in args:
105105
def _do_not_abort(msg):
106106
pass
107107

108108
# try to find a fully supported version first
109-
jdk = mx.get_tools_jdk(versionCheck=_igvJdkVersionCheck, versionDescription='IGV prefers JDK 17 through JDK 22', abortCallback=_do_not_abort)
109+
jdk = mx.get_tools_jdk(versionCheck=_igvJdkVersionCheck, versionDescription='IGV prefers JDK 17 through JDK 24', abortCallback=_do_not_abort)
110110
if jdk is None:
111111
# try any JDK
112112
jdk = mx.get_jdk()
@@ -119,6 +119,12 @@ def _do_not_abort(msg):
119119
mx.warn('If you experience any problems try to use a JDK 17 or JDK 21 instead.')
120120
mx.warn(f'mx help igv provides more details.')
121121

122+
v24 = mx.VersionSpec("24")
123+
if jdk.version >= v24 and 'org.graalvm.word' in (jmd.name for jmd in jdk.get_modules()):
124+
# disable JVMCI if jargraal is available to avoid collision with jdk.graal.compiler.graphio
125+
args.append('-J-XX:-UseJVMICompiler')
126+
args.append('-J-XX:-EnableJVMCI')
127+
122128
run_netbeans_app('IdealGraphVisualizer', jdkhome, args=args, dist='IDEALGRAPHVISUALIZER_DIST')
123129

124130
def c1visualizer(args):

visualizer/IdealGraphVisualizer/application/pom.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,6 @@
8686
<systemPropertyVariables>
8787
<all.clusters>${all.clusters}</all.clusters>
8888
<branding.token>${brandingToken}</branding.token>
89-
<java.awt.headless>true</java.awt.headless>
9089
</systemPropertyVariables>
9190
</configuration>
9291
</plugin>

visualizer/IdealGraphVisualizer/pom.xml

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,10 @@
4646
<systemPropertyVariables>
4747
<java.awt.headless>true</java.awt.headless>
4848
</systemPropertyVariables>
49-
<argLine>--add-opens=java.base/java.net=ALL-UNNAMED
49+
<argLine>
50+
--add-opens=java.base/java.net=ALL-UNNAMED
5051
--add-exports=java.desktop/sun.awt=ALL-UNNAMED
52+
-Dpolyglot.engine.WarnInterpreterOnly=false
5153
</argLine>
5254
</configuration>
5355
</plugin>
@@ -74,8 +76,8 @@
7476
<configuration>
7577
<rules>
7678
<requireJavaVersion>
77-
<version>[17,22)</version>
78-
<message>The IGV Netbeans platform requires a JDK version between 17 and 22</message>
79+
<version>[17,24)</version>
80+
<message>The IGV Netbeans platform requires a JDK version between 17 and 24</message>
7981
</requireJavaVersion>
8082
</rules>
8183
</configuration>
@@ -117,7 +119,7 @@
117119
<module>ViewerApi</module>
118120
</modules>
119121
<properties>
120-
<netbeans.version>RELEASE220</netbeans.version>
122+
<netbeans.version>RELEASE260</netbeans.version>
121123
<brandingToken>idealgraphvisualizer</brandingToken>
122124
<swinglayouts.version>1.0.2</swinglayouts.version>
123125
<nbmmvnplugin.version>4.8</nbmmvnplugin.version>

visualizer/mx.visualizer/mx_visualizer.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,12 @@ def igv(args):
166166

167167
if mx.get_opts().verbose:
168168
args.append('-J-Dnetbeans.logger.console=true')
169+
170+
v24 = mx.VersionSpec("24")
171+
if mx.get_jdk().version >= v24 and 'org.graalvm.word' in (jmd.name for jmd in mx.get_jdk().get_modules()):
172+
# disable JVMCI if jargraal is available to avoid collision with jdk.graal.compiler.graphio
173+
args.append('-J-XX:-UseJVMICompiler')
174+
args.append('-J-XX:-EnableJVMCI')
169175
mx.run([join(igvDir, 'application', 'target', 'idealgraphvisualizer', 'bin', 'idealgraphvisualizer.exe' if mx.is_windows() else 'idealgraphvisualizer'), '--jdkhome', mx.get_jdk().home] + args)
170176

171177
@mx.command(_suite.name, 'unittest')

0 commit comments

Comments
 (0)