`
胡小米
  • 浏览: 77301 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Tomcat 中部署 Java Web 程序 ( jar cvf *.war */. ) war 包

阅读更多
主要讲的是在 Tomcat 中部署 Java Web 应用程序。因为重点是如何部署,所以暂且先不介绍怎样开发 Web 应用程序和怎样启动 Tomcat 服务器,也不考虑使用的什么开发工具,总之在练习本文所说的例子之前,你应该有一个 Java Web 应用程序。本文假定 Web 应用程序的根目录为 HelloProject 。而且存放在 C:\Documents and Settings\Administrator\workspace 下, 目录结构如图:



下文中 $CATALINA_HOME 指的是 Tomcat 根目录。
在 Tomcat 中部署 Java Web 应用程序有两种方式:静态部署和动态部署。
一、静态部署
    静态部署指的是我们在服务器启动之前部署我们的程序,只有当服务器启动之后,我们的Web应用程序才能访问。以下3中方式都可以部署:
    1、将 HelloProject 目录拷贝到 $CATALINA_HOME\webapps 下,然后启动服务器就可以了。这种方式 是最简单的一种方式,访问地址如下:http://localhost:8080/HelloProject
    2、这种方式可以不必将 HelloProject 目录拷贝到 webapps 下,直接在 C:\Documents and Settings\Administrator\workspace 部署。
    方法如下,更改 $CATALINA_HOME\conf\server.xml 文件,在 <host> 标签内添加 <Context> 标签,内容如下:
    <Context docBase="C:\Documents and Settings\Administrator\workspace\HelloProject" reloadable="false" path="/HP"/>
    其中 reloadable="false" 表示当应用程序中的内容发生更改之后服务器不会自动加载,这个属性在开发阶段通常都设为 true,方便开发,在发布阶段应该设置为 false,提高应用程序的访问速度。
    docBase 为项目存放的路径,可以使用绝对路径,也可以使用相对路径,相对路径相对于 webapps。path 属性的值是访问时的根地址。访问地址如下:http://localhost:8080/HP
    说明:如果 HelloProject 下有 WebContent 目录,如图:



   
    那么下边的配置都可以,且访问路径要对应
    <Context docBase="C:\Documents and Settings\Administrator\workspace\HelloProject" reloadable="false" path="/HP"/> 访问地址:http://localhost:8080/HP/WebContent
    <Context docBase="C:\Documents and Settings\Administrator\workspace\HelloProject\WebContent" reloadable="false" path="/HPT"/> 访问地址:http://localhost:8080/HPT
    <Context docBase="C:\Documents and Settings\Administrator\workspace\HelloProject" path="/HelloProject" reloadable="true" /> 访问地址:http://localhost:8080/HelloProject
    在 <Content docBase=”..”path=”…” workDir=”…” /> 中 workDir 是部署后 jsp 发布的目录,可以自己随便指定,或不指定。
    3、这种方式和第二种方式差不多,但是不是在 Server.xml 文件中添加 Context 标签,而是在 $CATALINA_HOME\conf\Catalina\localhost 中添加一个 xml 文件,
    如 HP.xml,内容如下:<Context docBase="C:\Documents and Settings\Administrator\workspace\HelloProject" reloadable="false" /> 大家可能发现和第二种方式差不多,
    但是缺少了 path 属性,这种方式服务器会使用 .xml 的名字作为 path 属性的值。访问地址如下:http://localhost:8080/HP
    在看  *.war  的讲解和部署
    我们刚才是将 HelloProject 文件夹部署在了服务器中,我们知道可以将 Web 应用程序的内容打成 *.war 包,然后在部署在服务器上。
    打包请参考如下步骤:
    1、打开命令提示符(Start –> Run –> cmd)
    2、设置 jdk 环境变量 (如果是设置好的,可以省略此步)
    3、在命令提示符中进入 C:\Documents and Settings\Administrator\workspace\HelloProject 文件后,键入如下命令: jar cvf PHT.war */.       
    这样在当前目录下该有 PHT.war 文件。其中  .. 表示当前目录的父目录。命令行和目录结构如图:
    
    




     
    部署 PHT.war 文件非常简单,
    (1) 将刚才有 docBase="C:\Documents and Settings\Administrator\workspace\HelloProject" 更改为docBase="C:\Documents and Settings\Administrator\workspace\HelloProject\PHT.war"
    (2) 或者直接将其拷贝到 webapps下也可以。
    重新启动服务器就可以将 PHT.war 部署为一个 Web 应用程序了。
    如果你够细心的话你会发现,服务器将 PHT.war 文件解开,并且在 webapps 下面又生成了一个 PHT 文件夹,然后把 PHT.war 的内容拷贝到里面去了。
    我们可以通过以下方式取消自动解包,配置方式如下:
    <Host name="localhost"  appBase="webapps" unpackWARs="true" autoDeploy="true">
        <!--  将其中的 unpackWARs=”true” 改成 false 就 ok 了 –>
        <Context …. />
   
    </Host>
二、动态部署
    动态部署是指可以在服务器启动之后部署 web 应用程序,而不用重新启动服务器。
    动态部署要用到服务器提供的 manager.war 文件,如果在 $CATALINA_HOME\webapps\ 下没有该文件,你必须去重新下载 tomcat,否则不能完成以下的功能。
    要想使用该管理程序必须首先编辑 $CATALINA_HOME\conf\tomcat-users.xml 文件(关于这个文件的更多内容,请参考Java Web应用程序的安全模型二),
    内容如下:
    <tomcat-users>
        <role rolename="tomcat"/>
        <role rolename="role1"/>
        <role rolename="manager"/><!--  这个是自己加的,tomcat7 为 manager-gui   -->
        <user username="admin" password="admin" roles="manager"/><!--  这个是自己加的,tomcat7 为 manager-gui   -->
        <user username="tomcat" password="tomcat" roles="tomcat"/>
        <user username="both" password="tomcat" roles="tomcat,role1"/>
        <user username="role1" password="tomcat" roles="role1"/>
    </tomcat-users>
    然后在浏览器中键入如下地址:http://localhost:8080/ 点击 Tomcat Manager 链接,提示输入用户名和密码,本文都是 admin,然后可以看到以下页面:





在 ------>
1、Context Path(required):中输入 /HP
2、XML Configration file URL 中要指定一个 *.xml 文件,比如我们在 D:\ 下建立一个 PH.xml 文件,内容如下: <Context reloadable="false" />  docBase不用写了,因为在下一个文本框中填入。
或者更简单点,这个文本框什么都不填。
3、在 WAR or Directory URL:中键入 C:\Documents and Settings\Administrator\workspace\HelloProject 或者 C:\Documents and Settings\Administrator\workspace\HelloProject\PHT.war 都可以,然后点击 Deploy 按钮,看看上面是不是已经看到了你 web 应用程序,名字就是你 Context Path(required):中的名字。
4、如果你部署 *.war 文件还有更加简单的方式,下面还有个 Select WAR file upload 点击浏览选择 *.war 文件,然后点击 Deploy 也可以。
  • 大小: 27.4 KB
  • 大小: 30.8 KB
  • 大小: 48.7 KB
  • 大小: 20.2 KB
  • 大小: 146.1 KB
分享到:
评论

相关推荐

    在Tomcat中部署Java Web应用程序

    ### 在Tomcat中部署Java Web应用程序 #### 一、引言 在现代Web开发中,Apache Tomcat作为一款广泛使用的开源Java Servlet容器,为开发者提供了简单而强大的平台来部署Java Web应用程序。本文将详细介绍如何在Tomcat...

    java web项目打包.war格式

    WAR 文件是一个压缩文件,包含了 Java 项目的所有必要文件,可以直接部署到支持 WAR 文件的 Web 服务器中,如 Tomcat、JBoss 等。 使用命令行窗口打包 要使用命令行窗口打包 Java 项目,需要将项目的 class 文件、...

    java web项目打包war部署到tomcat

    在Java Web开发中,将应用程序打包成WAR格式并部署到Tomcat服务器是一项常见的操作。WAR(Web Application Archive)是一种用于打包Java Web应用程序的标准格式,它包含了运行应用程序所需的所有资源,如HTML、CSS、...

    打war包命令

    在Java开发过程中,打包应用程序为WAR(Web Application ARchive)文件是一项常见且重要的任务。WAR文件是一种标准的归档格式,主要用于部署Java Web应用程序。它不仅包含了Web应用程序的所有资源,如HTML页面、JSP...

    如何打jar,war包

    - 将生成的war文件部署到Web服务器(如Tomcat),服务器会自动解压war文件,并启动Web应用程序。 通过以上步骤,您不仅能够了解如何创建和运行jar包,还能初步接触war包的创建过程,这对于进行Java Web开发具有...

    将WEB项目以war包形式部署到tomcat中

    ### 将WEB项目以WAR包形式部署到Tomcat中的详细步骤及注意事项 #### 一、WAR包的概念与重要性 WAR文件(Web Application Archive)是一种用于封装Java Web应用程序的标准格式,它是由Sun Microsystems(现为Oracle...

    把java文件打包成.jar_(jar命令详解).doc

    `.war` 文件是一种特殊的 `.jar` 文件,主要用于部署 Java Web 应用程序。 **创建 WAR 文件的步骤**: 1. 准备资源文件,例如 `.java` 文件、配置文件等。 2. 在 Tomcat 的 `webapps` 目录下新建一个文件夹,如 `...

    使用Tomcat,无IDE工具手动部署Web程序

    2. **打包WAR文件**:进入项目根目录执行`jar cvf MyWeb.war *.*`命令,其中`cvf`分别代表创建(c)、验证(v)和文件(f)。完成后,项目根目录下会生成`MyWeb.war`文件。 3. **部署WAR文件**:将生成的WAR包复制到...

    java jar打包详解

    DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"&gt; &lt;web-app&gt; &lt;servlet-name&gt;hello&lt;/servlet-name&gt; &lt;servlet-class&gt;HelloWorld&lt;/...

    Tomcat部署Web应用方法总结

    在应用根目录下执行`jar cvf Pet.war *.`(注意末尾的空格和句点)。然后,可以将`.war`文件放到`webapps`目录下,Tomcat会自动解压并部署。也可以通过修改`$CATALINA_HOME/conf/Catalina/localhost`的XML文件来指定...

    将java文件打包成 jar jar命令详解

    JAR(Java Archive)是 Java 开发工具包 (JDK) 中的一个实用程序,用于将多个 Java 类文件和其他资源文件打包成一个 JAR 文件。JAR 文件不仅便于分发和部署,还支持对文件进行压缩,减少文件大小。 #### 二、JAR ...

    如何在dos下将工程打包成war包

    C:\myHome&gt; jar cvf myhome.war *.*/ ``` - `jar cvf`: 其中`c`表示创建一个新的归档文件;`v`表示在标准输出上打印详细信息;`f`后面跟归档文件名。 - `myhome.war`: 指定生成的WAR文件名称。 - `*.* /`: 表示...

    Web应用技术

    本篇将详细介绍在Tomcat中部署Web应用的方法,适用于初学者快速入门。 1. **静态部署** 静态部署意味着在Tomcat服务器启动前完成应用程序的配置。有三种静态部署的方式: a. **自动部署**:将Web应用的目录,...

    servlet基础教程

    - **WAR 包**:可以使用 `.war` 文件格式部署应用,Tomcat 在启动时会自动解压 `.war` 文件。 4. **jar命令介绍**: - 使用 `jar` 命令可以创建 `.jar` 或 `.war` 文件。 - `jar –cvf abc.jar`:创建名为 `abc....

    jar包的运行文档

    ### jar包的运行详解 #### 一、jar包的基础概念与构建 ...通过以上步骤,我们不仅了解了jar包的构建与运行机制,还掌握了如何将jar包集成到Web环境中,为Java开发者提供了全面的应用程序打包与部署指南。

    EJB3开发部署全过程

    - **Tomcat 5.0**:内置在JBoss 4.0中的Web容器,用于部署Web应用程序。 **JBoss与Tomcat的集成** JBoss 4.0自动集成了Tomcat 5.0,这意味着它不仅能作为专业的EJB容器,还能作为专业的JSP/Servlet容器和Web服务器...

    Tomcat5.0培训教材

    在Web应用的根目录下使用`jar`命令,如`jar cvf helloapp.war *.*`,将所有文件打包成一个名为`helloapp.war`的WAR文件。解压WAR文件使用`jar xvf helloapp.war`。 **Servlet的功能**: Servlet的主要功能包括: 1....

    servlet程序打包

    3. **部署WAR**:生成的WAR文件可以直接部署到支持Servlet规范的Web服务器,如Tomcat、Jetty等。只需将WAR文件复制到服务器的`webapps`目录下,服务器会自动解压并启动应用。 4. **测试与调试**:部署后,可以通过...

Global site tag (gtag.js) - Google Analytics