为什么Grail App war文件的大小与源代码相比太大了

时间:2016-09-24 05:07:40

标签: tomcat grails

我创建了一个8.9 MB的grail应用程序但是一旦我生成war文件大小显示30 MB为什么它占用30 MB。

2 个答案:

答案 0 :(得分:0)

WAR文件的大小是由Spring / Grails应用程序所需的库引起的。

答案 1 :(得分:0)

这是理由:

Grails是许多框架的混合,spring,hibernate等。所有框架都包含在内,你需要它们,因为它们是grails的基线 默认情况下,每个grails应用程序都附带许多插件(请查看BuildConfig.groovy):  缓存,资产,脚手架等。每个插件都有自己的依赖项,如类,jar,js等所有这些都加起来。

解决方案:战争和罐子只是容器。用你最喜欢的解压缩程序打开它们并检查。

您可以使用以下命令

删除它
grails war -nojars

注意:它将在没有WEB-INF / lib jar的情况下构建战争。但是您必须在部署之前将它们提供给您的Web服务器。

参考:http://mrhaki.blogspot.in/2009/05/create-much-smaller-grails-war-file.html

OR

如果你想删除特定的jar文件,那么你可以使用下面的配置

添加到您的BuildConfig.groovy:

grails.war.resources = { stagingDir ->
    delete(file:"${stagingDir}/WEB-INF/lib/whatever.jar")
}