Maven原型:由org.apache.maven.plugin.MojoFailureException引起的生成失败

问题描述 投票:4回答:5

我已经安装了maven 2,并按照下面的链接中所述的教程进行操作

maven.apache.org/guides/getting-started/maven-in-five-minutes.html

但是在执行archetype:generate命令时,

mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false"

我收到以下错误

[INFO] Trace
org.apache.maven.BuildFailureException: Error merging velocity templates
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:715)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:569)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:539)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:284)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.maven.plugin.MojoFailureException: Error merging velocity templates
at org.apache.maven.archetype.mojos.CreateProjectFromArchetypeMojo.execute(CreateProjectFromArchetypeMojo.java:211)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
... 17 more

有关信息,

我正在使用Sun OpenJDK 1.6.0,Maven 2和Xubuntu平台。

将对上述错误提供任何建议性帮助。

感谢,

索姆纳特

maven ubuntu maven-2 maven-plugin maven-3
5个回答
8
投票

似乎文件夹访问存在问题。检查您要创建项目的文件夹是否受写保护?如果是这样,则将其权限更改为777,然后检查其是否有效。


2
投票

我也遇到过同样的问题,但是我仍然拥有创建文件夹和文件的所有必需权限。但是事实证明archetype.xml中存在错误-我试图添加一个没有任何文件的文件夹-

 <testResources>
   <resource>src/test/resources/</resource>
 </testResources>

更正了archetype.xml之后,构建成功。


1
投票

是的,这绝对是权限错误。花了两天时间,只需使用sudo进行纠正即可:D


0
投票

我有相同的错误:D,我所做的是修改在其中创建项目文件夹的文件夹的权限(在您的情况下为'my-app')。确实,遇到此错误时,我只是遵循Maven教程的指南。

将'/ usr / local / apache-maven /'文件夹权限更改为775或777应该可以!


0
投票

如果在使用IDE(例如Eclipse)时遇到此错误,请关闭并重新打开IDE,然后重试。

我在Windows 10上使用Eclipse创建此错误(Error merging velocity templates)之后,将创建的项目删除到目标文件夹,然后将Maven项目创建到目标文件夹。首先,我尝试通过管理员帐户放宽文件夹的安全性-但是,我被拒绝访问!最后,在关闭Eclipse之后,我看到该文件夹​​在Windows资源管理器中消失了。

我假设我的IDE专门握有该文件夹的句柄,因此通常在Windows上值得注意的是,您可能必须关闭其他程序(或重新启动)才能解决此问题。

© www.soinside.com 2019 - 2024. All rights reserved.