diff --git a/native-maven-plugin/src/main/java/org/graalvm/buildtools/maven/NativeExtension.java b/native-maven-plugin/src/main/java/org/graalvm/buildtools/maven/NativeExtension.java index 39c5e9967..56d81d58b 100644 --- a/native-maven-plugin/src/main/java/org/graalvm/buildtools/maven/NativeExtension.java +++ b/native-maven-plugin/src/main/java/org/graalvm/buildtools/maven/NativeExtension.java @@ -92,8 +92,6 @@ static String testIdsDirectory(String baseDir) { return baseDir + File.separator + "test-ids"; } - private static String graalvmJava; - static String buildAgentArgument(String baseDir, Context context, List agentOptions) { List options = new ArrayList<>(agentOptions); String effectiveOutputDir = agentOutputDirectoryFor(baseDir, context); @@ -117,12 +115,6 @@ static String agentOutputDirectoryFor(String baseDir, Context context) { @Override public void afterProjectsRead(MavenSession session) { - try { - graalvmJava = Utils.getNativeImage(logger).getParent().resolve("java").toString(); - } catch (MojoExecutionException e) { - throw new RuntimeException(e); - } - for (MavenProject project : session.getProjects()) { Build build = project.getBuild(); withPlugin(build, "native-maven-plugin", nativePlugin -> { @@ -167,7 +159,7 @@ public void afterProjectsRead(MavenSession session) { for (Xpp3Dom child : children) { commandlineArgs.addChild(child); } - findOrAppend(config, "executable").setValue(graalvmJava); + findOrAppend(config, "executable").setValue(getGraalvmJava()); } }) ); @@ -321,7 +313,7 @@ private static void configureAgentForSurefire(Plugin surefirePlugin, String agen Xpp3Dom argLine = new Xpp3Dom("argLine"); argLine.setValue(agentArgument); configuration.addChild(argLine); - findOrAppend(configuration, "jvm").setValue(graalvmJava); + findOrAppend(configuration, "jvm").setValue(getGraalvmJava()); }); } @@ -360,4 +352,12 @@ private static Xpp3Dom findOrAppend(Xpp3Dom parent, String childName) { return child; } + private static String getGraalvmJava() { + try { + return Utils.getNativeImage(logger).getParent().resolve("java").toString(); + } catch (MojoExecutionException e) { + throw new RuntimeException(e); + } + } + }