wip
diff --git a/archetype-common/pom.xml b/archetype-common/pom.xml
index bfaccc5..6334208 100644
--- a/archetype-common/pom.xml
+++ b/archetype-common/pom.xml
@@ -130,10 +130,6 @@
<artifactId>plexus-velocity</artifactId>
</dependency>
<dependency>
- <groupId>org.apache.velocity</groupId>
- <artifactId>velocity</artifactId>
- </dependency>
- <dependency>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-provider-api</artifactId>
</dependency>
diff --git a/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultFilesetArchetypeGenerator.java b/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultFilesetArchetypeGenerator.java
index 3f5095b..a8617a8 100644
--- a/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultFilesetArchetypeGenerator.java
+++ b/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultFilesetArchetypeGenerator.java
@@ -62,6 +62,8 @@
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.context.Context;
+import org.apache.velocity.exception.ParseErrorException;
+import org.apache.velocity.exception.ResourceNotFoundException;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.component.annotations.Requirement;
import org.codehaus.plexus.logging.AbstractLogEnabled;
@@ -698,8 +700,8 @@
String localTemplateFileName = templateFileName.replace('/', File.separatorChar);
if (!templateFileName.equals(localTemplateFileName)
- && !velocity.getEngine().templateExists(templateFileName)
- && velocity.getEngine().templateExists(localTemplateFileName)) {
+ && !templateExists(templateFileName)
+ && templateExists(localTemplateFileName)) {
templateFileName = localTemplateFileName;
}
@@ -746,6 +748,15 @@
return true;
}
+ private boolean templateExists(String templateName) {
+ try {
+ velocity.getEngine().getTemplate(templateName);
+ return true;
+ } catch (ResourceNotFoundException | ParseErrorException e) {
+ return false;
+ }
+ }
+
private void processTemplates(
String packageName,
File outputDirectoryFile,
diff --git a/archetype-common/src/test/java/org/apache/maven/archetype/old/ArchetypeTest.java b/archetype-common/src/test/java/org/apache/maven/archetype/old/ArchetypeTest.java
index 0f08962..8493d59 100644
--- a/archetype-common/src/test/java/org/apache/maven/archetype/old/ArchetypeTest.java
+++ b/archetype-common/src/test/java/org/apache/maven/archetype/old/ArchetypeTest.java
@@ -151,7 +151,10 @@
velocity.getEngine()
.mergeTemplate(
- OldArchetype.ARCHETYPE_RESOURCES + "/" + OldArchetype.ARCHETYPE_POM, context, writer);
+ OldArchetype.ARCHETYPE_RESOURCES + "/" + OldArchetype.ARCHETYPE_POM,
+ "UTF-8",
+ context,
+ writer);
} finally {
Thread.currentThread().setContextClassLoader(old);
}
diff --git a/maven-archetype-plugin/pom.xml b/maven-archetype-plugin/pom.xml
index ff14be4..67e5efc 100644
--- a/maven-archetype-plugin/pom.xml
+++ b/maven-archetype-plugin/pom.xml
@@ -145,10 +145,6 @@
<artifactId>plexus-velocity</artifactId>
</dependency>
<dependency>
- <groupId>org.apache.velocity</groupId>
- <artifactId>velocity</artifactId>
- </dependency>
- <dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
</dependency>
diff --git a/pom.xml b/pom.xml
index 8ddfa2f..4c04d47 100644
--- a/pom.xml
+++ b/pom.xml
@@ -174,20 +174,6 @@
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-velocity</artifactId>
<version>2.1.0</version>
- <exclusions>
- <exclusion>
- <groupId>velocity</groupId>
- <artifactId>velocity</artifactId>
- </exclusion>
- <exclusion>
- <groupId>velocity</groupId>
- <artifactId>velocity-api</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.codehaus.plexus</groupId>
- <artifactId>plexus-container-default</artifactId>
- </exclusion>
- </exclusions>
</dependency>
<dependency>
<groupId>org.jdom</groupId>
@@ -195,11 +181,6 @@
<version>2.0.6.1</version>
</dependency>
<dependency>
- <groupId>org.apache.velocity</groupId>
- <artifactId>velocity</artifactId>
- <version>1.7</version>
- </dependency>
- <dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.2</version>
@@ -212,7 +193,7 @@
<dependency>
<groupId>org.apache.maven.plugin-testing</groupId>
<artifactId>maven-plugin-testing-harness</artifactId>
- <version>2.1</version>
+ <version>3.3.0</version>
</dependency>
<dependency>
<groupId>org.apache.maven.wagon</groupId>