有时编译需要很长时间,我想在编译时弄乱一个文件。在编译期间保存新文件会影响构建吗?还是所有内容都已预加载?
最佳答案
我不确定这是一个有意义的问题:“所有编译器和语言都是这种情况吗?”
更有意义的问题是,对于给定的构建系统,我可以在构建过程中编辑源代码吗?
对于 ant 构建,很明显 ant 会提前(基于文件时间戳)决定编译什么,但您不知道编译任务何时开始。
编译器确实只读取一次源文件,但您通常不知道它何时发生。
有趣的用例是:
当我运行 sbt> ~ test
时,sbt 会在我编辑代码时完成测试运行,还是会在中途停止重新编译?
我发现使用命令选项来确定编辑是否中止测试运行很有用。您可能想查看测试结果,或者您可能只对修改后的测试结果感兴趣。
如果编译和测试周期看起来没完没了,尤其如此。
Here是测试文档。 doc for triggered execution说:
Monitoring is terminated when enter is pressed.
这可以解释为意味着在任务执行时监控不会暂停。
关于java - 如果在编译期间编辑文件会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17705782/