我在Eclipse工作区中配置了一个Tomcat实例,用于调试我的Web应用程序。
有没有办法在Eclipse环境之外或通过任何(脚本或代码)配置或控制Tomcat实例的活动?
[注意: - 我正在尝试创建一个ant脚本,结合停止服务器等活动,从版本控制系统复制源代码,编译更新的源代码,在eclipse集成服务器路径中重新部署,然后重新启动服务器。你的意见对我很有帮助!!]
提前致谢。!!!
答案 0 :(得分:1)
Ant
可以为您执行所有这些操作。就服务器的启动/停止而言,Tomcat包括用于在{YOUR_TOMCAT_HOME}/server/lib/catalina-ant.jar
中找到的操作这些操作的类。
ant-tasks应该是这样的(除了this link):
假设您的应用程序名称的名称是newapp,那么在build.xml中包含以下内容。
<property name="name" value="newapp"/>
<taskdef name="start" classname="org.apache.catalina.ant.StartTask">
<classpath>
<path location="${appserver.home}/server/lib/catalina-ant.jar"/>
</classpath>
</taskdef>
<taskdef name="stop" classname="org.apache.catalina.ant.StopTask">
<classpath>
<path location="${appserver.home}/server/lib/catalina-ant.jar"/>
</classpath>
</taskdef>
<target name="start" description="Start Tomcat application">
<start url="${tomcat.manager.url}"
username="${tomcat.manager.username}"
password="${tomcat.manager.password }"
path="/${name}"/>
</target>
<target name="stop" description="Stop Tomcat application">
<stop url="${tomcat.manager.url}"
username="${ tomcat.manager.username}"
password="${tomcat.manager.password}"
path="/${name}"/>
</target>
创建一个build.properties文件,其中包含build.xml
使用的变量# Ant properties for building the springapp
appserver.home=${user.home}/jakarta-tomcat-5.0.28
deploy.path=${appserver.home}/webapps
tomcat.manager.url=http://localhost:8080/manager
tomcat.manager.username=admin
tomcat.manager.password=tomcat
答案 1 :(得分:0)
使用Ant脚本执行此操作。只需编写一个脚本,编译您的webapp,然后使用WAR
- Target打包整个应用程序。通过Exec
- Target停止tomcat,复制war文件并使用Exec
- Target再次启动tomcat。
如果您已将tomcat安装为服务,则可以使用windows命令
net stop "tomcatServiceName"
阻止你的tomcat。
e.g。
<target name="stop-tomcat6">
<exec executable="cmd">
<arg line='/c net stop "Apache Tomcat"'/>
</exec>
</target>