You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@netbeans.apache.org by sk...@apache.org on 2022/05/30 08:38:08 UTC
[netbeans] branch delivery updated: [3809] Maven/New POM Project
This is an automated email from the ASF dual-hosted git repository.
skygo 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 fcbe2f82dc [3809] Maven/New POM Project
new cc14a920bc Merge pull request #4147 from vieiro/hotfix/3809
fcbe2f82dc is described below
commit fcbe2f82dcf88697d94bc460212e48aad122a860
Author: Antonio Vieiro <vi...@apache.org>
AuthorDate: Tue May 24 23:44:37 2022 +0200
[3809] Maven/New POM Project
---
.../modules/maven/newproject/TemplateUtils.java | 42 +++++++++++-----------
.../idenative/IDENativeMavenWizardIterator.java | 1 +
.../idenative/IDENativeTemplateHandler.java | 19 +++++-----
.../newproject/idenative/PomJavaNativeMWI.java | 9 ++++-
4 files changed, 42 insertions(+), 29 deletions(-)
diff --git a/java/maven/src/org/netbeans/modules/maven/newproject/TemplateUtils.java b/java/maven/src/org/netbeans/modules/maven/newproject/TemplateUtils.java
index 77bf1504e6..03a4afb106 100644
--- a/java/maven/src/org/netbeans/modules/maven/newproject/TemplateUtils.java
+++ b/java/maven/src/org/netbeans/modules/maven/newproject/TemplateUtils.java
@@ -255,27 +255,29 @@ public final class TemplateUtils {
POMModel model = POMModelFactory.getDefault().getModel(modelSource);
org.netbeans.modules.maven.model.pom.Project root = model.getProject();
if (root != null) {
- if (model.startTransaction()) {
- try {
- org.netbeans.modules.maven.model.pom.Properties props = root.getProperties();
- if (props == null) {
- props = model.getFactory().createProperties();
- root.setProperties(props);
- }
- String packageName = (String) properties.get(TemplateUtils.PARAM_PACKAGE);
- String mainClass = (String) properties.get(TemplateUtils.PARAM_MAIN_CLASS_NAME);
- if (mainClass == null || mainClass.isEmpty()) {
- mainClass = "App"; // NOI18N
- }
- if (packageName != null && !packageName.isEmpty()) {
- mainClass = packageName + '.' + mainClass;
- }
- props.setProperty("exec.mainClass", mainClass); // NOI18N
- } finally {
- model.endTransaction();
+ if (model.getProject().getPackaging() == null || "jar".equals(model.getProject().getPackaging())) {
+ if (model.startTransaction()) {
try {
- Utilities.saveChanges(model);
- } catch (IOException ex) {}
+ org.netbeans.modules.maven.model.pom.Properties props = root.getProperties();
+ if (props == null) {
+ props = model.getFactory().createProperties();
+ root.setProperties(props);
+ }
+ String packageName = (String) properties.get(TemplateUtils.PARAM_PACKAGE);
+ String mainClass = (String) properties.get(TemplateUtils.PARAM_MAIN_CLASS_NAME);
+ if (mainClass == null || mainClass.isEmpty()) {
+ mainClass = "App"; // NOI18N
+ }
+ if (packageName != null && !packageName.isEmpty()) {
+ mainClass = packageName + '.' + mainClass;
+ }
+ props.setProperty("exec.mainClass", mainClass); // NOI18N
+ } finally {
+ model.endTransaction();
+ try {
+ Utilities.saveChanges(model);
+ } catch (IOException ex) {}
+ }
}
}
}
diff --git a/java/maven/src/org/netbeans/modules/maven/newproject/idenative/IDENativeMavenWizardIterator.java b/java/maven/src/org/netbeans/modules/maven/newproject/idenative/IDENativeMavenWizardIterator.java
index ef2e035dd6..7e380de038 100644
--- a/java/maven/src/org/netbeans/modules/maven/newproject/idenative/IDENativeMavenWizardIterator.java
+++ b/java/maven/src/org/netbeans/modules/maven/newproject/idenative/IDENativeMavenWizardIterator.java
@@ -93,6 +93,7 @@ public abstract class IDENativeMavenWizardIterator implements WizardDescriptor.I
return new FileBuilder(w.getTemplate().getPrimaryFile(), w.getTargetFolder().getPrimaryFile().getParent()).
param(TemplateUtils.PARAM_PACKAGE, (String) wiz.getProperty("package")).
+ param(TemplateUtils.PARAM_PACKAGING, (String) this.packaging).
defaultMode(FileBuilder.Mode.COPY).
name(w.getTargetName()).
useLookup(Lookups.fixed(h));
diff --git a/java/maven/src/org/netbeans/modules/maven/newproject/idenative/IDENativeTemplateHandler.java b/java/maven/src/org/netbeans/modules/maven/newproject/idenative/IDENativeTemplateHandler.java
index 8d81e48360..4a4261f690 100644
--- a/java/maven/src/org/netbeans/modules/maven/newproject/idenative/IDENativeTemplateHandler.java
+++ b/java/maven/src/org/netbeans/modules/maven/newproject/idenative/IDENativeTemplateHandler.java
@@ -122,15 +122,18 @@ public class IDENativeTemplateHandler extends CreateFromTemplateHandler {
params.put("projecName", cd.getName());
params.put("packagePath", pi.packageName == null ? "" : pi.packageName.replace('.', '/')); // NOI18N
- String mainName;
- if (!params.containsKey("mainClassName")) { // NOI18N
- String derived = deriveClassName(pi.artifactId);
- if (BaseUtilities.isJavaIdentifier(derived)) {
- mainName = derived;
- } else {
- mainName = "App"; // NOI18N
+ String packaging = cd.getValue(TemplateUtils.PARAM_PACKAGING);
+ if (packaging == null || "jar".equals(packaging)) { // NOI18N
+ String mainName;
+ if (!params.containsKey("mainClassName")) { // NOI18N
+ String derived = deriveClassName(pi.artifactId);
+ if (BaseUtilities.isJavaIdentifier(derived)) {
+ mainName = derived;
+ } else {
+ mainName = "App"; // NOI18N
+ }
+ params.put("mainClassName", mainName); // NOI18N
}
- params.put("mainClassName", mainName); // NOI18N
}
diff --git a/java/maven/src/org/netbeans/modules/maven/newproject/idenative/PomJavaNativeMWI.java b/java/maven/src/org/netbeans/modules/maven/newproject/idenative/PomJavaNativeMWI.java
index ac01a5cba7..be689be5f9 100644
--- a/java/maven/src/org/netbeans/modules/maven/newproject/idenative/PomJavaNativeMWI.java
+++ b/java/maven/src/org/netbeans/modules/maven/newproject/idenative/PomJavaNativeMWI.java
@@ -28,7 +28,14 @@ import org.openide.util.NbBundle;
*
* @author mkleint
*/
-@TemplateRegistration(folder=ArchetypeWizards.TEMPLATE_FOLDER, position=980, displayName="#LBL_Maven_POM_Archetype", iconBase="org/netbeans/modules/maven/resources/Maven2Icon.gif", description="pom-root.html")
+@TemplateRegistration(
+ displayName="#LBL_Maven_POM_Archetype",
+ iconBase="org/netbeans/modules/maven/resources/Maven2Icon.gif",
+ description="pom-root.html",
+ folder=ArchetypeWizards.TEMPLATE_FOLDER,
+ position=980,
+ createHandlerClass = IDENativeTemplateHandler.class
+)
@NbBundle.Messages("LBL_Maven_POM_Archetype=POM Project")
public class PomJavaNativeMWI extends IDENativeMavenWizardIterator {
---------------------------------------------------------------------
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