我将我的项目从使用 Tomcat 7.0.54 插件升级到 8.0.15,不幸的是,现在每当我尝试使用该插件从服务器部署或取消部署(即:grails tomcat 部署)时,我都会收到以下错误:
Error executing script Tomcat: taskdef class org.apache.catalina.ant.DeployTask cannot be found using the classloader AntClassLoader[]
不幸的是,谷歌搜索这个错误似乎没有产生任何与Grails或Grails Tomcat插件相关的信息。
我已经通过将以下内容添加到我的 BuildConfig 来解决此问题:
build 'org.apache.tomcat:tomcat-catalina-ant:8.0.15'
这修复了缺少类的问题,但它发现了Tomcat.groovy
脚本的另一个问题(你可以在 target/work/plugins} 下找到它)。
它尝试在部署任务中传递一个名为 warName
的变量,但该变量不存在。 我还没有找到应该在哪里声明,所以我暂时将其硬编码为我的战争文件的路径和名称。
,我必须重新启动GGTS才能获取对此文件的更改
编辑
将硬编码的战争文件名替换为warCreator.warName
,并开始使用 BuildConfig 中的名称