Grails 3.2.5。 Build.gradle有邮件插件:
compile "org.grails.plugins:mail:2.0.0.RC6"
在将战争部署到生产环境时,我需要从WEB-INF / lib中删除javax.mail-1.5.6.jar,因为在使用JNDI邮件资源时该jar必须位于Tomcat lib中。那么如何保留邮件插件,但从战争中删除有问题的jar文件?我知道如何在Grails 2.x中这样做。通过build.gradle中的gradle war任务,我试图排除文件(没有工作 - jar以某种方式从插件中漂移),并试图过滤掉文件。当我建立战争时,我得到两个文件 - " app-0.1.war"和" app-0.1.war.original"。 "原创"文件已经过滤掉了WEB-INF / lib / javax.mail jar,但真正的,完整的战争仍然存在。
那么如何防止插件jar进入war文件呢?感谢。
答案 0 :(得分:1)
这样做的一种方法是:
war {
rootSpec.exclude '**/javax.mail*.jar'
}
(您可能需要调整,具体取决于您是否还要将javax.mail-api
jar文件与javax.mail
jar一起排除)