Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Eclipse clean+;构建vs仅构建_Java_Eclipse - Fatal编程技术网

Java Eclipse clean+;构建vs仅构建

Java Eclipse clean+;构建vs仅构建,java,eclipse,Java,Eclipse,如果我在Eclipse中执行clean+Build与仅执行Build有什么区别吗 我知道clean将删除所有编译的类 但如果我只构建它,它会覆盖它们,不是吗 那么,执行clean+Build比只执行Build有什么好处呢。不执行clean的Build尝试只构建已更改或由于某些其他原因需要重建的资源 有时你仍然需要做一次清理,以得到一个干净的板岩,而不是过时的资源最终破坏你的构建或软件 例如,如果您删除了一个类,并且在没有清理的情况下进行了构建,那么以前编译的类文件仍然会存在,并且可能会导致问题。

如果我在Eclipse中执行clean+Build与仅执行Build有什么区别吗

我知道clean将删除所有编译的类

但如果我只构建它,它会覆盖它们,不是吗


那么,执行clean+Build比只执行Build有什么好处呢。

不执行clean的Build尝试只构建已更改或由于某些其他原因需要重建的资源

有时你仍然需要做一次清理,以得到一个干净的板岩,而不是过时的资源最终破坏你的构建或软件


例如,如果您删除了一个类,并且在没有清理的情况下进行了构建,那么以前编译的类文件仍然会存在,并且可能会导致问题。

增量eclipse构建的整个思想是在确保完整性的同时,为您提供更好的性能

当您更新文件(通过源代码管理工具)并删除文件时,eclipse也会检测到这一点,并自动删除相应的工件!eclipse在依赖性方面非常聪明,它会尽最大努力使事情正确无误,而不会丢掉一切。当然,这里有一个先决条件:您必须刷新eclipse,以便它检查文件系统内容,以便在情况发生变化时真正了解情况!当然,您希望自动启用构建

你应该把干净的建筑作为最后的手段。通常,您只在eclipse内部出现某种“混乱”时才需要它

更多的轶事证据:我们的eclipse项目规模很大(一个完全干净的构建需要两分钟,最终会有100000多个警告)。这意味着每一个git获取/重基都会导致大量的文件被添加/更改/删除。我仍然不需要运行一个干净的构建——我甚至不记得上一次需要干净的构建是什么时候了。而且一切都很好,在我的输出目录中没有垃圾的掠夺


我眼中的一个例外是:当您在eclipse中使用SVN存储库和SVN插件时,对“干净构建”的需求可能会明显增加。因为eclipsee的所有SVN插件都不能完美地用于大型代码库。他们做各种各样的内部缓存——我也看到过很多这样的事件,当一个干净的构建和eclipse重启是真正回到工作环境所必需的时候。(作为记录:这些问题的答案是在eclipse中去掉SVN,例如通过使用git SVN工具)

谢谢@Kayaman,那么build With clean就没有任何用途了?基本上,我是从时间的角度问的,因为clean+build比仅在项目较大时构建要花费更多的时间。不,这根本不是我所说的。例如,在从存储库更新(例如SVN)后,clean+build选项似乎更合适,因为可能会删除一些文件,对吗?我不同意最后一段。据我所知:当您从源代码中删除文件并刷新eclipse时,它会检测到“类”消失,并删除相应的工件。您可以看到-IDE还将根据现在删除的实体显示其他类的错误。那么为什么eclipse不应该从其输出树中删除相应的.class呢@GoeTeCo你需要“自动构建”,虽然Yes可能删除一个类是一个坏的例子。而且对于记录:考虑清理不再需要的注释,因为它们对实际的问题/答案没有贡献。