指南中描述的编译与运行时发生的编译是相同的,我认为人们对使用它的恐惧是没有根据的。人们有时看到的AOT问题可以分为几类——一类是当你有编译和未编译代码的层级,且协议被重新编译。采用指南中的方法就不会发生这种情况,因为一切都在加载顺序中编译,就像在运行时一样。另一类是在REPL中修改对运行时产生影响的编译内容——有一些事情我们希望在未来1.12中处理。许多人已经使用指南中的方法并发现启动时间显著提高,并且不像你想象的那么容易出现问题(特别是因为它遵循了你的应用程序的加载顺序)。试试看,并在此处报告问题!