无法使用mvn-ant-task运行eclipse目标



我正试图从ant构建文件在maven项目上运行eclipse:eclipse

但它失败了,错误:

    Eclipsify:
     [echo] Converting Maven Project to Eclipse Project
[artifact:mvn] -Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable and mvn script match.org.apache.tools.ant.ExitExceptio
n: Permission ("java.lang.RuntimePermission" "exitVM") was not granted.
[artifact:mvn]  at org.apache.tools.ant.types.Permissions$MySM.checkExit(Permissions.java:194)
[artifact:mvn]  at java.lang.Runtime.exit(Runtime.java:107)
[artifact:mvn]  at java.lang.System.exit(System.java:962)

下面是build.xml

中的配置
<project name="ConnectAll"
     default="default"
     xmlns:artifact="antlib:org.apache.maven.artifact.ant">

在ant目标中,我添加了eclipse目标,如下所示

<artifact:mvn pom="${pom}" mavenhome="${MVN_HOME}">
            <arg value="eclipse:eclipse" />
            <arg value="-Dmaven.multiModuleProjectDirectory=true"/>
</artifact:mvn>

我也验证了${MVN_HOME}的属性和实际的M2_HOME是相同的。

谁能帮我弄清楚我在这里错过了什么

从Eclipse Juno (v4.2)开始,它包含Maven集成。

Maven项目应该使用导入向导导入:

  • Eclipse菜单:文件->导入…
  • 对话框Import,在页面Select打开
  • 从树中选择Maven ->现有Maven项目
  • 按下下一步
  • 页面Maven Projects打开
  • 根目录字段中填写Maven项目所在的位置(使用Browse…以方便地选择位置(这将显示一个选择窗口,当按OK时,或选择一个目录,它可能需要一段时间,在所有Maven项目被发现之前,因为所有底层目录都被扫描))
  • Projects视图中选择您想要导入的项目(已经导入的项目,以灰色显示(不可选择)。如果不同的Maven项目/模块具有相同的工件,也会发生这种情况。作为Maven构件,它被用作Eclipse项目名)。
  • Finish按钮,开始导入选中的Maven项目
    警告这将需要一段时间,因为很多时候,丢失的依赖项也需要下载。

备注当使用集成Maven支持的Eclipse时,不要使用mvn eclipse:eclipse,因为它们相互冲突。

相关内容

  • 没有找到相关文章

最新更新