Play使用Eclipse JDT在运行时编译代码。
看一看以下类,Play使用它来在运行时执行必要的编译。
https://github.com/playframework/play/blob/master/framework/src/play/classloading/ApplicationCompiler.java
另外,仅需注意播放中DEV模式和PROD模式之间的区别。这是Play开发人员的一项设计决定,即一旦应用程序进入生产模式,服务器启动时便会编译类,并且不会检查它们是否进行热重装。这是有道理的,因为在PROD模式下,您的代码实际上不应更改。
在DEV模式下,每次接收到新请求时都会检查Java文件是否有更新,并且任何重新更改的文件都会自动重新编译(错误会直接显示在浏览器中)。在DEV模式下,此过程非常有效,因为您将经常更改代码,并且即时反馈非常强大。



