当前位置: 首页 > 面试题库 >

如何创建war文件

南宫泓
2023-03-14
问题内容

创建战争文件(使用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内运行,并且可以用来与其他也在开发项目的开发人员轻松共享部署策略(例如,通过源代码控制)。



 类似资料:
  • 问题内容: 创建战争文件(使用eclipse)以在tomcat上运行的最佳实践是什么?教程,链接,示例受到高度赞赏。 问题答案: 你可以使用Ant来设置,编译,WAR和部署你的解决方案。 然后,你可以在Eclipse中执行一键操作以运行该Ant目标。以下是每个步骤的示例: 前提条件 我们假设你的代码组织如下: :Java文件,属性,XML配置文件 :你的JSP文件 :运行时所需的任何JAR :你的

  • 使用Ant创建WAR文件非常简单,与创建JAR文件任务非常相似。 毕竟,WAR文件,就像JAR文件只是另一个ZIP文件。 WAR任务是JAR任务的扩展,但它有一些很好的补充,可以操作进入WEB-INF/classes文件夹的内容,并生成web.xml文件。 WAR任务对于指定WAR文件的特定布局很有用。 由于WAR任务是JAR任务的扩展,因此JAR任务的所有属性都适用于WAR任务。 Sr.No.

  • 我想构建一个WAR文件(然后将其部署到Tomcat)。因此,作为练习,我在IDEA Intellij中使用Gradle开始了一个新的Spring启动项目。之后,我在文件中应用了这个插件,比如这个。 问题是,当我尝试在终端中运行时,没有得到war文件!唯一发生的事情是,它将生成一个,其中包含3个子组件、和,但在这些组件中没有战争。 我应该怎么做才能获得WAR文件?我看过这段视频,但这家伙使用Mave

  • 我得到了这个文件,但它不同于eclipse的一个输出。这个大约是100KB,eclipse输出超过2000KB。 我可以使用什么正确的命令来获得与Eclipse相同的文件?

  • 我正在尝试部署一个java api,它基本上带有。docker容器中的war fie inside/tomcat/webapps/directory。我能够复制这本书。位于其中的Artifactory中的war文件。现在docker容器中的tomcat结构是:tomcat/webapps/api。war 问题是,在我将war文件复制到那里之后,我不知道java和tomcat是如何工作的,以便war

  • 我有一个maven web项目,包装为“战争”。包生成确认为war格式的war文件。但是,我喜欢将项目打包为“jar”以及默认的“war”格式。因此,我尝试使用“Maven Jar”插件来实现这一点。我正在使用以下jar插件配置。

  • 我需要向我的文件添加一些规则。然而,我在我的项目文件夹中找不到它。它不是由Xcode自动创建的吗?如果不是,什么命令允许我创建一个?

  • 我使用“Create database Gameshop;”创建了一个数据库。对于我的类和我需要把它作为一个'.sql'文件交出来,但是,我不知道去哪里找这个文件或者如何创建它。 我担心如果我尝试了什么而失败了,我会失去我所有的工作。谢谢你!