java – 播放框架.无需编译

我被介绍到Play框架,我发现它的一个惊人的事情是没有必要编译项目.您只需要保存已编辑的文件并重新加载网页.

我被告知Java代码被编译为字节码,然后使用JIT编译器进行编译,那么Play框架内部的魔力是什么?

解决方法

在DEV模式下运行时,Play的工作方式是检查java文件的上次修改日期,并使用在运行时生成的.class文件交叉引用它们.如果它识别出某些内容已发生变化,那么它会在运行时重新编译它们.

在Play 1.x中 – 使用eclipse jdt编译器(org.eclipse.jdt.internal.compiler.Compiler)完成重新编译.如果您想查看Play 1.x中的代码,请查看以下类 – https://github.com/playframework/play/blob/master/framework/src/play/classloading/ApplicationCompiler.java

在Play 2.x中,看起来Play通过与SBT工具链接来实现它.看看这个 – https://github.com/playframework/Play20/blob/master/framework/src/play/src/main/scala/play/core/system/ApplicationProvider.scala

相关文章

Java中的String是不可变对象 在面向对象及函数编程语言中,不...
String, StringBuffer 和 StringBuilder 可变性 String不可变...
序列化:把对象转换为字节序列的过程称为对象的序列化. 反序...
先说结论,是对象!可以继续往下看 数组是不是对象 什么是对...
为什么浮点数 float 或 double 运算的时候会有精度丢失的风险...
面试题引入 这里引申出一个经典问题,看下面代码 Integer a ...