Tomcat使用Ant取消部署/部署

时间:2013-11-18 18:26:08

标签: tomcat deployment ant jenkins undeploy

我的ant-script和tomcat有问题。我想创建一个ant-scipt,用jenkins在我的tomcat-server上构建,编译和部署我的gwt-application。为此,我使用来自catalina(catalina-ant.jar)的undeploy和deploy任务。但是我得到了这个错误:

  

建立失败   D:\ Jenkins \ jobs \ HomepageTomcat \ workspace \ build.xml:124:java.lang.NoSuchFieldError:ISO_8859_1       在org.apache.catalina.ant.AbstractCatalinaTask.execute(AbstractCatalinaTask.java:204)       在org.apache.catalina.ant.AbstractCatalinaTask.execute(AbstractCatalinaTask.java:150)       在org.apache.catalina.ant.UndeployTask.execute(UndeployTask.java:44)       在org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)       at sun.reflect.GeneratedMethodAccessor4.invoke(未知来源)       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)       在java.lang.reflect.Method.invoke(Method.java:601)       在org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)       at org.apache.tools.ant.Task.perform(Task.java:348)       在org.apache.tools.ant.Target.execute(Target.java:435)       在org.apache.tools.ant.Target.performTasks(Target.java:456)       在org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393)       在org.apache.tools.ant.Project.executeTarget(Project.java:1364)       at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)       在org.apache.tools.ant.Project.executeTargets(Project.java:1248)       在org.apache.tools.ant.Main.runBuild(Main.java:851)       在org.apache.tools.ant.Main.startAnt(Main.java:235)       在org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)       在org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

这是我的蚂蚁脚本的重要部分:

5 <property name="tomcat.manager.url" value="http://localhost:8080/manager" />
6 <property name="tomcat.manager.username" value="tomcat" />
7 <property name="tomcat-manager-password" value="secret" />
8 <property name="app.name" value="appName" />

116 <target name="tomcat-undeploy" description="undeploy tomcat project">
117  <undeploy
118    url="${tomcat.manager.url}"
119    username="${tomcat.manager.username}"
120    password="${tomcat-manager-password}"
121    path="/${app.name}" 
122  />
123 </target>

我希望有人可以帮助我。 谢谢!

1 个答案:

答案 0 :(得分:3)

看来,您的catalina-ant.jar版本需要Java 7,而您使用的是其他版本。使用最近的JRE来运行Ant或更早的catalina-ant.jar

我查找了当前AbstractCatalinaTask的代码(请参阅堆栈跟踪),并在第204行找到了对StandardChrasets.ISO_8859_1的引用。根据StandardCharsets文档,它在Java 7之前不存在。