尝试在Gradle中使用Tomcat Ant任务
我正在从Ant迁移到Gradle的过程中。我似乎找不到更好的方法来管理我的tomcat在年级的部署,所以我试图从Gradle内部使用tomcat Ant任务,但我无法让它工作 以下是我在Ant中所做的工作尝试在Gradle中使用Tomcat Ant任务,tomcat,gradle,ant,Tomcat,Gradle,Ant,我正在从Ant迁移到Gradle的过程中。我似乎找不到更好的方法来管理我的tomcat在年级的部署,所以我试图从Gradle内部使用tomcat Ant任务,但我无法让它工作 以下是我在Ant中所做的工作 <taskdef name="deploy" classname="org.apache.catalina.ant.DeployTask"/> <target name="deploy" description="Install web application"
<taskdef name="deploy" classname="org.apache.catalina.ant.DeployTask"/>
<target name="deploy" description="Install web application"
depends="dist">
<deploy url="${url}" username="${username}" password="${password}"
path="/${contextName}" war="${DIST}/${contextName}.war"/>
</target>
当我使用--debug
标志运行任务时,我可以看到任务正在从JAR中加载属性
Class org.apache.catalina.ant.DeployTask loaded from ant loader (parentFirst)
但是我收到了这个错误信息
Could not set unknown property 'war' for task ':deploy' of type org.gradle.api.DefaultTask.
WAR肯定是此任务的一个属性,但错误消息称其为DefaultTask
,这一事实使我认为taskdef
设置不正确,但我不确定。事实上,没有什么是有效的,因为如果我删除“war”,那么它只会抱怨我定义的下一个属性
我使用的是Gradle 3.5,您需要用逗号分隔任务属性。您在
taskdef
任务中执行了此操作,但在deploy
任务中缺少它们
ant.deploy(url="http://localhost:8080/manager/text", username:"user", password:"pass", path:"/app", war:"dist/app.war")
谢谢,我还必须将“=”替换为“:”就像我对
taskdef所做的那样
ant.deploy(url="http://localhost:8080/manager/text", username:"user", password:"pass", path:"/app", war:"dist/app.war")