生成的 war 文件是 20mb,grails 2.2 中没有任何插件?

generated war file is 20mb without any plugins in grails 2.2?

我正在创建测试应用程序。我需要将它们上传到远程服务器,因此生成的 war 大小很重要。测试应用程序大多不使用插件。即使在删除所有默认插件后,生成的 war 也是 20 MB。有没有办法进一步减少 war 文件?我正在使用 grails 2.2。我猜 war 中有很多不需要的东西。我感谢任何帮助。谢谢!

如果我是你,我会考虑升级到 Grails 4 或者可能会考虑 Micronaut。 Grails 通常针对开发速度、运行大量库以及使用约定优于配置进行了优化。话虽这么说,您可能会从 Grails 4 中获得一些收益,因为已经发生了许多重构,并且一些旧的依赖项已被删除。 Grails 4 还使用 Micronaut 作为其父上下文,从而加快了启动时间。 Grails 3 和 4 通常也消耗较少的内存。升级到 Grails 3 的努力是一个功能: 你有多少不好的做法 * 你有多少代码

因此,升级到 Grails 3 并非易事,但考虑到您的应用程序有多小,它可能并没有那么糟糕。将表格 3 升级到表格 4 更加直接。从 2 到 4 比从 2 到 3 需要更多的努力,但是如果你的应用程序真的很小,它可能不会那么糟糕。

另一方面,Micronaut 是为微服务而设计的,并且占地面积更小。您仍然可以将 Groovy 与它一起使用,虽然它确实与 Grails 共享一些即将到来的特征,但它不使用约定优于配置,并且看起来更像是带有大量注释的 spring 引导。

Even after removing all default plugins the generated war is 20 mb. Is there a way to reduce the war file further? I am using grails 2.2.

在不知道您的应用程序在做什么以及实际使用了哪些库的情况下,不可能说 .war 文件中是否还有更多可以删除的内容。查看 .war 文件中的 .jar 文件,如果有您不需要的文件,可以将其排除。有关排除传递依赖项的信息,请参阅 https://grails.github.io/grails2-doc/2.2.x/guide/conf.html#ivy