【发布时间】:2011-12-02 09:22:36
【问题描述】:
Eclipse (Project-->Build Automatically) 中的Build Automatically 选项的目的是什么?我的总是会被检查。但是,当我有一些 Java 代码更改时,我仍然需要进行完整的构建。有人告诉我应该始终检查它。我认为这样做没有任何好处。请有人解释一下。
【问题讨论】:
Eclipse (Project-->Build Automatically) 中的Build Automatically 选项的目的是什么?我的总是会被检查。但是,当我有一些 Java 代码更改时,我仍然需要进行完整的构建。有人告诉我应该始终检查它。我认为这样做没有任何好处。请有人解释一下。
【问题讨论】:
是的,您仍然需要进行构建 - 但它会在您保存时自动完成(不是像 Ant 构建那样的外部构建,而是“内部”构建)。如果您不想在保存时进行构建,请取消选中该框。我相信,让它自动构建会让一些人感到紧张。
【讨论】:
Eclipse 有个好答案on their website:
您有两种工作模式:自动构建模式和手动构建模式。默认情况下,您处于自动构建模式,Eclipse 会自动编译源文件。每次您更改工作区中的文件(例如保存编辑器)时,都会在后台自动进行构建。自动构建很方便,因为它意味着问题视图、二进制文件等始终是最新的。缺点是在大型工作区中,如果您要更改具有大量下游依赖项目的项目中的文件,则自动构建可能会很耗时。
如果自动构建耗时过长并且干扰了正在进行的开发,可以将其关闭。一旦进入手动构建模式,用户就可以完全控制构建发生的时间和构建的内容。可以随时调用 Project > Build All (Ctrl+B) 来触发自动构建正在自动执行的操作。这允许您在调用构建之前构建更大的更改集(Eclipse 会记住哪些文件已更改,因此当您请求构建时它不必做比所需更多的工作。
请注意,当他们说“自动构建模式”时,他们的意思是如果您选中了“自动构建”,当他们说“手动构建模式”时,他们表示您没有选中“自动构建”。
【讨论】:
注意
对于 C/C++ 用户,它被告知 (from help.eclipse.org):
默认情况下,Eclipse 工作台配置为自动构建项目。但是,对于 C/C++ 开发,您应该禁用此选项,否则您的整个项目将在任何时候重新构建,例如,您保存对 makefile 或源文件的更改。点击 Project > Build Automatically 并确保 Build Automatically 菜单项旁边没有复选标记。
【讨论】:
项目 - 禁用自动构建 选项并不总是意味着自动构建已关闭。例如,当 Preferences - Run/Debug - launch - (General opt) Build before launch 为 ON 时,“Makegood”测试自动化插件将触发自动构建。因此,如果需要手动构建,请将其关闭。
【讨论】:
人们在这里没有提到的一件事(我也花了一段时间才弄清楚)是 eclipse 构建(自动或手动)基本上会遵循您在项目的“Java 构建路径”中概述的内容"源选项卡。因此,当该构建源选项卡中包含文件时,当您更改文件时,它会被复制/编译到为该目录/文件指定的输出文件夹中。
【讨论】:
另一个区别是:
大多数时候,在处理 JSP 时,它会在检查“自动构建”时帮助我。它会自动获取 JSP 中的更改。
但是,如果您对 java 类/XML 进行更改,则需要手动构建。
由于我使用的是通过命令提示符在 Eclipse 外部运行的树脂服务器,因此我更喜欢检查该选项。
当我在 Eclipse 中设置服务器时,我将其关闭并使用在服务器上发布。
这是我使用的方式,答案基于我的经验。
【讨论】:
如果选中自动生成,IDE 将在您修改和保存文件时自动编译您的 Java 代码。这并不意味着它将完全构建和打包您的整个解决方案,就好像您将要部署它一样,例如您在一个 WAR 模块上的 Web 项目中工作。它基本上只是编译你的代码。
【讨论】: