【问题标题】:NetBeans -- Is it possible to bypass the IDE-generated Ant build for an existing project?NetBeans -- 是否可以为现有项目绕过 IDE 生成的 Ant 构建?
【发布时间】:2011-08-09 23:10:21
【问题描述】:

我有一个带有子项目的 Java 项目,该项目当前是使用 NetBeans 的 IDE 生成的 Ant 脚本构建的。我正在将整个项目转换为 Maven 构建。

我的 Maven 构建在命令行中运行良好,并在 Eclipse 中完美加载。但是,我可以让项目在 NetBeans 中作为 Maven 项目加载的唯一方法是删除 Ant 脚本,即每个子项目的 build.xml 和目录 nbproject。似乎只要我有旧的 IDE 生成的构建文件,NetBeans 就会将该项目识别为 NetBeans Java 项目,而不是 Maven Java 项目,即使还存在一个 pom.xml 文件。

除了删除 IDE 生成的构建文件之外,有没有办法告诉 NetBeans 将该项目作为 Maven 项目加载?

有人告诉我,在过渡到 Maven 期间,我们希望将 Ant 构建保留一段时间。

使用 NetBeans 6.9.1、Maven 2.2。

任何帮助将不胜感激。

谢谢

【问题讨论】:

    标签: netbeans ant maven-2 netbeans-6.9


    【解决方案1】:

    这是我最终做的:

    我编写了一个 Ant 脚本(讽刺,对吧?),对于我项目的每个子项目,如果文件 nbproject/project.xml 存在,则将其重命名为 nbproject/nb_project_disabled.xml。如果 nbproject/nb_project_disabled.xml 存在,脚本会将其重命名为 nbproject/project.xml。通过这种方式,脚本将项目的打开切换为 NetBeans Ant 构建或 Maven 构建。

    如果您知道,NetBeans 有一个设置来打开这两种项目,那就太好了。目前(6.9.1),只有“打开项目”命令。在 Eclipse 中,有“Import Existing Maven Projects”命令与“Import Existing Project Into Workspace”命令(即原生 Eclipse 格式)。

    【讨论】:

      【解决方案2】:

      嗯,nb ant 项目元数据优先于 pom.xml 文件的出现(这就是识别和加载 maven 项目的方式)。整个优先顺序硬连线在 IDE 中,您只能通过卸载 j2se ant 项目类型来影响它。

      所以,是的。在将项目作为 maven 项目打开之前,您需要摆脱 ant 项目元数据。根据删除元数据的方式和时间,您可能还需要重新启动 IDE 才能加载新内容。

      【讨论】:

      • 经过一番摸索和试验后,我确定将文件 nbproject/project.xml 重命名为其他名称可以使 NetBeans 将项目作为 Maven 项目打开。这样做的好处是保留 build.xml、build-impl.xml 和 project.properties,因此从命令行构建的 Ant 不会受到影响。
      【解决方案3】:

      你见过http://wiki.netbeans.org/MavenBestPractices吗?它表示您必须先安装 NetBeans maven 插件。也许这就是您的 Maven 项目无法识别的原因。

      我必须注意,我不再是 NetBeans 用户了!

      【讨论】:

      • 这不再需要,至少从 6.9 版开始,maven 支持是内置的。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-12-22
      • 2011-02-14
      • 2010-10-07
      • 2010-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多