如何创建war文件

创建战争文件(使用eclipse)以在tomcat上运行的最佳实践是什么?教程,链接,示例受到高度赞赏。

回答:

您可以使用Ant来设置,编译,WAR和部署解决方案。

<target name="default" depends="setup,compile,buildwar,deploy"></target>

然后,您可以在Eclipse中执行一键操作以运行该Ant目标。以下是每个步骤的示例:

前提条件

我们假设您的代码组织如下:

  • ${basedir}/src:Java文件,属性,XML配置文件
  • ${basedir}/web:您的JSP文件
  • ${basedir}/web/lib:运行时所需的任何JAR
  • ${basedir}/web/META-INF:您的清单
  • ${basedir}/web/WEB-INF:您的web.xml文件

设定

定义一个setup任务,该任务创建分发目录并复制需要直接警告的所有工件:

<target name="setup">

<mkdir dir="dist" />

<echo>Copying web into dist</echo>

<copydir dest="dist/web" src="web" />

<copydir dest="dist/web/WEB-INF/lib" src="${basedir}/../web/WEB-INF/lib" />

</target>

编译

将您的Java文件构建为类,并复制位于其下src但需要在运行时可用的任何非Java构件(例如属性,XML文件等):

<target name="compile">

<delete dir="${dist.dir}/web/WEB-INF/classes" />

<mkdir dir="${dist.dir}/web/WEB-INF/classes" />

<javac destdir="${dist.dir}/web/WEB-INF/classes" srcdir="src">

<classpath>

<fileset dir="${basedir}/../web/WEB-INF/lib">

<include name="*" />

</fileset>

</classpath>

</javac>

<copy todir="${dist.dir}/web/WEB-INF/classes">

<fileset dir="src">

<include name="**/*.properties" />

<include name="**/*.xml" />

</fileset>

</copy>

</target>

建立战争

创建WAR本身:

<target name="buildwar">

<war basedir="${basedir}/dist/web" destfile="My.war"

webxml="${basedir}/dist/web/WEB-INF/web.xml">

<exclude name="WEB-INF/**" />

<webinf dir="${basedir}/dist/web/WEB-INF/">

<include name="**/*.jar" />

</webinf>

</war>

</target>

部署

最后,您可以设置任务以将WAR直接部署到Tomcat部署位置:

<target name="deploy">

<copy file="My.war" todir="${tomcat.deploydir}" />

</target>

点击走!

一旦完成所有这些设置,只需default从Eclipse 启动目标即可编译,WAR和部署您的解决方案。

这种方法的优点是,它可以在Eclipse外部以及Eclipse内运行,并且可以用来与其他也在开发项目的开发人员轻松共享部署策略(例如,通过源代码控制)。

以上是 如何创建war文件 的全部内容, 来源链接: utcz.com/qa/409314.html

回到顶部