从tomcat webapp文件夹生成war文件

时间:2013-05-02 15:35:29

标签: java tomcat

我有一个tomcat服务器正常工作,我有一个webapp文件夹my_web_app

我没有部署项目;我只有该应用程序的那个文件夹(如TOMCAT_DIR/webapps/my_web_app)。

我需要的是WAR文件。如何从此Web应用创建.war文件?

4 个答案:

答案 0 :(得分:125)

您可以从现有文件夹中创建.war文件。

使用此命令

cd /to/your/folder/location
jar -cvf my_web_app.war *

答案 1 :(得分:23)

就像创建项目的WAR文件一样,您可以通过多种方式(从Eclipse,命令行,maven)完成。

如果您想从命令行执行,则命令为

jar -cvf my_web_app.war * 

这意味着,“将此目录中的所有内容压缩到名为my_web_app.war的文件中” (c = create,v = verbose,f = file)

答案 2 :(得分:4)

有一种方法可以从eclipse创建项目的war文件。

首先使用以下代码创建一个xml文件,

  

将HistoryCheck替换为您的项目名称。

<?xml version="1.0" encoding="UTF-8"?>
<project name="HistoryCheck" basedir="." default="default">
    <target name="default" depends="buildwar,deploy"></target>
    <target name="buildwar">
        <war basedir="war" destfile="HistoryCheck.war" webxml="war/WEB-INF/web.xml">
            <exclude name="WEB-INF/**" />
            <webinf dir="war/WEB-INF/">
                <include name="**/*.jar" />
            </webinf>
        </war>
    </target>
    <target name="deploy">
        <copy file="HistoryCheck.war" todir="." />
    </target>
</project>

现在,在项目浏览器中右键单击 xml 文件,然后运行as-&gt;蚂蚁构建

您可以在项目文件夹中查看项目的war文件。

答案 3 :(得分:1)

在不同的目录中创建war文件到内容所在的位置,否则jar命令可能会尝试压缩它正在创建的文件。

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
           elementFormDefault="qualified"
           vc:minVersion="1.1">

  <xs:element name="forecast">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="day" maxOccurs="unbounded">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="HiTemp" type="xs:integer"/>
              <xs:element name="LoTemp" type="xs:integer"/>
              <xs:element name="Wind" type="xs:string"/>
              <xs:element name="Humidity" type="xs:string"/>
              <xs:element name="DewPoint" type="xs:string"/>
              <xs:element name="Visibility" type="xs:string"/>
              <xs:element name="UVIndex" type="xs:string"/>
              <xs:element name="Sunrise" type="xs:string"/>
              <xs:element name="Sunset" type="xs:string"/>
            </xs:sequence>
            <xs:attribute name="name" type="xs:string" use="required"/>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="week" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
</xs:schema>