【问题标题】:How configure Eclipse to compile if and only if ant compiles当且仅当 ant 编译时如何配置 Eclipse 进行编译
【发布时间】:2013-09-27 13:06:52
【问题描述】:

我需要为 Eclipse 找到一个配置或插件,当且仅当“ant clean all”编译时才能使 Eclipse 编译,并且它应该为大型项目提供合理的性能,而无需在 Eclipse 中进行数千个配置设置.我知道其他 IDE 开箱即用,但我需要开始爱上 Eclipse。目前我有一个可以用“ant clean all”编译的项目,但是为了编写单元测试,我相信我需要让 Eclipse 相信该项目也可以编译。我试过刷新和项目/清理没有成功。我还尝试了一些项目/属性/构建器并添加了一个 ant 构建器。虽然一条有希望的路径让我感到困惑:我的工作区由 80 多个不同的项目组成,当我通常编译它时,我会在命令行转到一个特定的项目文件夹并执行“ant clean all”,所有不同的子项目都被编译成一个应用程序.然而,对于 Eclipse 来说,一直执行“ant clean all”的性能太差了。如果有任何想法或链接,我将不胜感激?

【问题讨论】:

  • 所以你的项目不能用 eclipse 编译? (或者我错过了什么?)
  • 不,它没有。因此,我无法从 Eclipse 中运行任何单元测试。它仍然使用 ant 编译,这是我们通常编译它的方式,所以真的没有语法错误。
  • 基本上我最大的问题是我无法从 Eclipse 中运行单元测试,并且不知道任何其他快速的方法来做到这一点。此外,所有红色标记都有些令人不安。

标签: eclipse ant configuration compilation


【解决方案1】:

所以您的问题是 Eclipse 没有正确的模块类路径。 Eclipse 将项目的类路径存储在项目根目录下的 .classpath 文件中。

我不是 eclipse 专家,但我认为您不会找到能够解释您的 build.xml 以使您的项目依赖项与 eclipse .classpath 文件保持最新的插件。

我认为您有 2 种策略可以使其在 eclipse 下运行(并利用 eclipse 编译器的优势):

  1. 为每个 ant 模块创建一个 Eclipse 项目(即每个 build.xml 一个)。如果你的模块结构是扁平的,它可能是最好的选择。但是您必须手动配置每个模块的依赖项(将依赖模块添加为项目依赖项并导出它们(项目类路径窗口下的选项卡“导出”)

  2. 为你所有的 ant 模块创建一个 eclipse 项目,并将源文件夹一一“添加”到类路径中。如果您的 ant 模块不在平面层次结构中,它可能是 eclipse 支持的唯一解决方案。但是,如果您开始在 eclipse 中编辑代码:您很有可能在模块之间引入不需要的(可能是循环的)依赖关系,因为 eclipse 会将所有内容视为一个巨大的单个项目。

如果您有任何第三方库,您还必须手动将它们添加到类路径中。

【讨论】:

  • 好吧,这么大的项目听起来有点复杂,所以换成 IntelliJ 可能会更好,据传闻会自动处理这个问题。我或许可以为其他团队成员“隐形”地做到这一点。
  • 我不认为 IntelliJ 能够自动做到这一点。 intellij 的主要优点是它可以毫无问题地处理分层模块,但它不会保持自定义 build.xml 和内部项目文件 (*.iml) 之间的透明同步
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-05
  • 1970-01-01
  • 2017-02-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多