在Tomcat中使用通用jar创建精简Grails war文件

yx2lnoni  于 2023-03-30  发布在  其他
关注(0)|答案(1)|浏览(95)

生成的包含所有默认jar的Grails war文件大约为30 MB。我需要减少这个大小,以便频繁地测试部署到远程Tomcat容器。所以我尝试使用通用的Tomcat库技术。由于某些原因,该过程不起作用。
以下是我正在采取的步骤
1.首先,我将所有jar文件从web-inf/lib目录复制到服务器的common目录,如下所示

下面是/var/lib/tomcat 7/conf/catalina.propertiescommon.loader配置。

1.然后,我按如下方式配置Grails配置

1.然后我使用grails war --nojars创建war
生成的war文件大小为6.42MB。
1.然后我将war文件复制到tomcatwebapps目录。
1.当我访问Web应用程序时,我得到“页面找不到404错误”。
我哪里做错了?

更新

以下是catalina. out中记录的错误。应用程序是nojars。

kyvafyod

kyvafyod1#

最好的办法是限制依赖性;这只能通过你的build.gradle文件AFAIK来完成。只把cruft切掉到你需要的地方。
如果你知道一个插件是由另一个依赖提供的,使用'provided'

provided 'org.grails.plugins:cache:4.0.0'
compile "org.grails.plugins:async"
provided "org.grails:grails-logging"
provided "org.grails:grails-plugin-i18n"

此外,删除double includes(如groovy-all)和其他你不需要的部分:

provided 'org.codehaus.gpars:gpars:1.2.1', {
    exclude group:'org.multiverse', module:'multiverse-core'
    exclude group:'org.codehaus.groovy', module: 'groovy-all'
}

在你的www.example.com中明确声明你需要的部分gradle.build,排除你不需要的部分。

相关问题