当我通过它为我的 Grails 应用程序构建一个战争文件时,grails war
它仍然包含一些 groovy 文件。
将war-filed部署在应用服务器上后,这些文件何时以及如何编译为java字节码?
当我通过它为我的 Grails 应用程序构建一个战争文件时,grails war
它仍然包含一些 groovy 文件。
将war-filed部署在应用服务器上后,这些文件何时以及如何编译为java字节码?
模板用于动态脚手架。例如,如果您有这样的控制器
class PersonController {
static scaffold = Person
}
然后它将使用模板在运行时创建一个控制器。这在实际应用程序中并不经常使用——它更多地用于演示和入门——但它是一种选择。动态生成的控制器和 GSP 基于模板创建并在内存中编译。
groovy-all jar 确实有可以编译 Groovy 源代码的代码,但那是因为它是“-all”jar。仅仅因为它在那里并不意味着它必须被使用。一般来说,所有编译都是在构建战争时完成的,包括预编译 GSP。这是为了性能 - 您希望应用程序在生产中尽可能快。
groovy 文件在打包到 war 之前被编译成类文件。检查 WEB-INF/classes 目录