You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@netbeans.apache.org by ne...@apache.org on 2023/01/31 18:53:45 UTC
[netbeans] branch delivery updated: React on both build and compile goals.
This is an automated email from the ASF dual-hosted git repository.
neilcsmith pushed a commit to branch delivery
in repository https://gitbox.apache.org/repos/asf/netbeans.git
The following commit(s) were added to refs/heads/delivery by this push:
new 05e0b0feb00 React on both build and compile goals.
new 071b9d19372 Merge pull request #5396 from sdedic/micronaut/native-image-compile
05e0b0feb00 is described below
commit 05e0b0feb00022a0540c481bf9e35051fca9340b
Author: Svata Dedic <sv...@oracle.com>
AuthorDate: Tue Jan 31 13:57:42 2023 +0100
React on both build and compile goals.
---
.../micronaut/maven/MicronautMavenConstants.java | 10 ++++--
.../maven/MicronautPackagingArtifactsImpl.java | 37 ++++++++++++++++------
2 files changed, 35 insertions(+), 12 deletions(-)
diff --git a/enterprise/micronaut/src/org/netbeans/modules/micronaut/maven/MicronautMavenConstants.java b/enterprise/micronaut/src/org/netbeans/modules/micronaut/maven/MicronautMavenConstants.java
index bc93993b3c0..823347e2b53 100644
--- a/enterprise/micronaut/src/org/netbeans/modules/micronaut/maven/MicronautMavenConstants.java
+++ b/enterprise/micronaut/src/org/netbeans/modules/micronaut/maven/MicronautMavenConstants.java
@@ -52,9 +52,15 @@ public final class MicronautMavenConstants {
public static final String CLASSIFIER_NATIVE = "native-image";
/**
- * Native image plugin's goal to compile image without fork.
+ * Native image plugin's goal to compile image without fork. Available from
+ * 0.9.14 version, DOES NOT exist on earlier versions.
*/
- public static final String PLUGIN_GOAL_COMPILE_NOFORK = "build";
+ public static final String PLUGIN_GOAL_COMPILE_NOFORK = "compile-no-fork";
+
+ /**
+ * Now deprecated goal, which produces a warning starting from 0.9.14 .
+ */
+ public static final String PLUGIN_GOAL_COMPILE_NOFORK_OLD = "build";
/**
* Native image plugin's goal to compile image from commandline
diff --git a/enterprise/micronaut/src/org/netbeans/modules/micronaut/maven/MicronautPackagingArtifactsImpl.java b/enterprise/micronaut/src/org/netbeans/modules/micronaut/maven/MicronautPackagingArtifactsImpl.java
index 4f28b7f07a9..f4889716013 100644
--- a/enterprise/micronaut/src/org/netbeans/modules/micronaut/maven/MicronautPackagingArtifactsImpl.java
+++ b/enterprise/micronaut/src/org/netbeans/modules/micronaut/maven/MicronautPackagingArtifactsImpl.java
@@ -66,11 +66,6 @@ public class MicronautPackagingArtifactsImpl implements ProjectArtifactsImplemen
*/
public static final String PLUGIN_PARAM_SHAREDLIBRARY = "sharedLibrary"; // NOI18N
- /**
- * Maven goal that does the native-image compilation.
- */
- private static final String GOAL_NATIVE_COMPILE = "native:compile"; // NOI18N
-
private static final Set<String> SUPPORTED_ARTIFACT_TYPES = new HashSet<>(Arrays.asList(
MicronautMavenConstants.TYPE_DYNAMIC_LIBRARY, MicronautMavenConstants.TYPE_EXECUTABLE
));
@@ -122,6 +117,21 @@ public class MicronautPackagingArtifactsImpl implements ProjectArtifactsImplemen
public boolean computeSupportsChanges(R r) {
return true;
}
+
+ /**
+ * Goals that actually trigger native artifact generation. As they are compared by name with
+ * configurations, use both unprefixed and prefixed forms
+ */
+ private static final String[] NATIVE_ARTIFACT_BUILDERS = new String[] {
+ MicronautMavenConstants.PLUGIN_GOAL_COMPILE,
+ MicronautMavenConstants.PLUGIN_GOAL_COMPILE_NOFORK,
+ "native:" + MicronautMavenConstants.PLUGIN_GOAL_COMPILE, // NOI18N
+ "native:" + MicronautMavenConstants.PLUGIN_GOAL_COMPILE_NOFORK, // NOI18N
+
+ // Compatibility with plugin 0.9.13 and earlier:
+ MicronautMavenConstants.PLUGIN_GOAL_COMPILE_NOFORK_OLD,
+ "native:" + MicronautMavenConstants.PLUGIN_GOAL_COMPILE_NOFORK_OLD, // NOI18N
+ };
static class R extends AbstractMicronautArtifacts {
@@ -173,9 +183,13 @@ public class MicronautPackagingArtifactsImpl implements ProjectArtifactsImplemen
boolean explicitGraalvmGoal = false;
if (buildCtx.getProjectAction() != null) {
RunConfig cfg = RunUtils.createRunConfig(buildCtx.getProjectAction(), getProject(), null, Lookup.EMPTY);
- if (cfg != null && cfg.getGoals().contains(GOAL_NATIVE_COMPILE)) {
- LOG.log(Level.FINE, "Go explicit native compilation goal from the action");
- explicitGraalvmGoal = true;
+ Set<String> triggerGoals = new HashSet<>(Arrays.asList(NATIVE_ARTIFACT_BUILDERS));
+ if (cfg != null) {
+ triggerGoals.retainAll(cfg.getGoals());
+ if (!triggerGoals.isEmpty()) {
+ LOG.log(Level.FINE, "Go explicit native compilation goal from the action");
+ explicitGraalvmGoal = true;
+ }
}
}
if (!explicitGraalvmGoal && !MicronautMavenConstants.PACKAGING_NATIVE.equals(model.getPackaging())) {
@@ -194,8 +208,11 @@ public class MicronautPackagingArtifactsImpl implements ProjectArtifactsImplemen
}
LOG.log(Level.FINE, "Configured executions: {0}", p.getExecutions());
for (PluginExecution pe : p.getExecutions()) {
- if (pe.getGoals().contains(MicronautMavenConstants.PLUGIN_GOAL_COMPILE_NOFORK)) { // NOI18N
- Xpp3Dom dom = model.getGoalConfiguration(MicronautMavenConstants.NATIVE_BUILD_PLUGIN_GROUP, MicronautMavenConstants.NATIVE_BUILD_PLUGIN_ID, pe.getId(), MicronautMavenConstants.PLUGIN_GOAL_COMPILE_NOFORK); // NOI18N
+ Set<String> triggerGoals = new HashSet<>(Arrays.asList(NATIVE_ARTIFACT_BUILDERS));
+ triggerGoals.retainAll(pe.getGoals());
+ if (!triggerGoals.isEmpty()) {
+ String goalName = triggerGoals.iterator().next();
+ Xpp3Dom dom = model.getGoalConfiguration(MicronautMavenConstants.NATIVE_BUILD_PLUGIN_GROUP, MicronautMavenConstants.NATIVE_BUILD_PLUGIN_ID, pe.getId(), goalName); // NOI18N
if (dom != null) {
LOG.log(Level.FINE, "Found bound execution for goals {0}", pe.getGoals());
addNativeExecutable(nativeStuff, model, dom, pe);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists