精华内容
下载资源
问答
  • 关于war包 jar包 ear包 及打包方法war包:是做好一个web应用后,通常是网站打成包部署到容器中jar包:通常是开发的时候要引用的通用类,打成包便于存放管理。ear包:企业级应用 通常是EJB打成ear包各种包的打法:转...

    关于war包 jar包 ear包 及打包方法

    war包:是做好一个web应用后,通常是网站打成包部署到容器中

    jar包:通常是开发的时候要引用的通用类,打成包便于存放管理。

    ear包:企业级应用 通常是EJB打成ear包

    各种包的打法:

    转:

    兄弟,对java着迷吗,或者是为了自己的生计,不论怎样都欢迎你进入精彩java世界,welcome!可能你刚刚对每个人说:Hello World!也或者……ok!这已经足够了。那就让我们开始吧,开始这个魔幻世界的旅程:

    jar文件听说过吗,没有?或者陌生!好,没关系,这就是我们的第一站:打包发布。

    为什么会有这个玩意呢,首先,这是jar的全称:JavaTM Archive (JAR) file,是的,就是java存档文件。这有点类似zip文件,想一想它是干什么的用的呢,压缩!?没错就是要压缩,将我们原先零散的东西放到一下,重新组织,所有这些目的只有一个:方便!好了,不用管他是怎么压缩的,我们的重点是哪些是我们要压缩的(输入),还有压缩成了什么(输出),进而将它发布(部署)。

    那我们的输入(要压缩的东西)主要是class文件,还有辅助的资源(这其中可能有图片,jsp文件,html文件等等)。Jar技术在jdk1.1版本中就已存在,在1.2中又有了增强。接下来说说jar的好处吧,这是官方的描述:安全,快速下载,压缩,猎取包,版本化包,可携。

    说了这么多,我们现在开始实施。

    先打开命令提示符(win2000或在运行筐里执行cmd命令,win98为DOS提示符),输入jar –help,然后回车(如果你盘上已经有了jdk1.1或以上版本),看到什么:

    用法:jar {ctxu}[vfm0Mi] [jar-文件] [manifest-文件] [-C 目录] 文件名 ...

    选项:

    -c 创建新的存档

    -t 列出存档内容的列表

    -x 展开存档中的命名的(或所有的〕文件

    -u 更新已存在的存档

    -v 生成详细输出到标准输出上

    -f 指定存档文件名

    -m 包含来自标明文件的标明信息

    -0 只存储方式;未用ZIP压缩格式

    -M 不产生所有项的清单(manifest〕文件

    -i 为指定的jar文件产生索引信息

    -C 改变到指定的目录,并且包含下列文件:

    如果一个文件名是一个目录,它将被递归处理。

    清单(manifest〕文件名和存档文件名都需要被指定,按'm' 和 'f'标志指定的相同顺序。

    示例1:将两个class文件存档到一个名为 'classes.jar' 的存档文件中:

    jar cvf classes.jar Foo.class Bar.class

    示例2:用一个存在的清单(manifest)文件 'mymanifest' 将 foo/ 目录下的所有文件存档到一个名为 'classes.jar' 的存档文件中:

    jar cvfm classes.jar mymanifest -C foo/ .

    来个小例子试试看:

    我们只有一个HelloWorld,如下:

    public class HelloWorld{

    public static void main(String[] args){

    System.out.println(“Hi, Hello World!”);

    }

    }

    我将这个java文件存到C盘跟目录下,ok,接下来,

    在先前打开的命令提示符下(跳转到C盘提示符下),我们输入javac HelloWorld.java,然后继续输入:jar cvf hello.jar HelloWorld.class,回车后去你的C盘看看,多了什么,没错 hello.jar 。

    基本的步骤我们现在都知道了,你可以自己去尝试一下随着jar后面的参数的不同,结果有什么变化。

    紧接着我们看看如何运行我们的jar包。

    在进入正题之前,你要先打开我们刚刚做好的jar包看看,多了什么呢,META-INF目录?再看看里面是什么,还有一个MANIFEST.MF文件是不是?用文本编辑器(我这里是UltraEdit)打开它看看:

    Manifest-Version: 1.0

    Created-By: 1.4.2 (Sun Microsystems Inc.)

    就是这样。这里我们对它进行修改,加一句:Main-Class: HelloWorld (在第三行)。这个就是我们之前写的那个类,也就是我们的入口类。也即,

    Manifest-Version: 1.0

    Created-By: 1.4.2 (Sun Microsystems Inc.)

    Main-Class: HelloWorld

    接下来,我们在命令提示符里执行:

    jar umf MANIFEST.MF app.jar

    这样我们使用了我们自己的MANIFEST.MF文件对原来默认的进行了更新。你不妨可以再进去看看是不是添上了Main-Class: HelloWorld这一句。

    Ok,这个最后的一步了,来验证我们做的一切,在命令提示符中输入:

    java -jar hello.jar(执行)

    出现了什么,――Hi, Hello World!

    我们再来看看jar文件在tomcat中发布,注意:在tomcat中我们就不能再用jar这种格式,而改war格式,它是专门用于web应用的,其实整个过程下来基本上和jar是类似的:

    先准备我们要打包的资源。

    找到存放tomcat的webapps目录,进到其中,新建一个文件夹,这里命名为hello,再进去新建WEB-INF文件夹,再进去新建classes文件夹,此时我们也将我们唯一的servlet,HelloWorld.java放到这里,在与classes目录同级下建立一文件web.xml。Ok,目前我们初步建立了一个简单的web应用。

    这是HelloWorld.java:

    import java.io.*;

    import javax.servlet.*;

    import javax.servlet.http.*;

    public class HelloWorld extends HttpServlet {

    public void doGet(HttpServletRequest req, HttpServletResponse res)

    throws ServletException, IOException {

    res.setContentType("text/html");

    PrintWriter out = res.getWriter();

    out.println("");

    out.println("

    Hello, World!");

    out.println("

    ");

    out.println("Hello, World!");

    out.println("");

    }

    }//end here!

    对它编译。下面是web.xml:

    /p>

    '-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN'

    'http://java.sun.com/j2ee/dtds/web-app_2_3.dtd'>

    hello

    HelloWorld

    hello

    /HelloWorld

    开始压缩,形成war档:

    在命令提示符下进到先前创制的hello目录下,执行 jar cvf hello.war * ,我们便得到hello.war。将它拷贝至webapps目录下,ok,来看最后一步,打开tomcat的目录conf中的server.xml,加入:

    reloadable="true"/>

    大功告成!运行它,启动tomcat,后在浏览器中输入http://localhost:8080/hello/HelloWorld,有了吗?

    最后,如果你想用ant来完成以上的打包活动,下面就告诉你:

    对于jar来说。在build.xml中,

    对于war,

    好了,就这么多,希望对你有点帮助。:)

    我上传了上面打过的两个包,hello.jar和hello.war。 『 点击下载 』

    『 点击下载 』

    第一rar文件对应的是hello.jar,下载后将其名改为hello.jar

    第二rar文件对应hello.war,下载后改为hello.war。

    这是由于上传不了jar格式和war格式的文件,你只好照我上面说的去做了 :)

    补充:

    ############

    jar基本操作:

    ############

    1. 创建jar文件

    jar cf jar-file input-file(s)

    c---want to Create a JAR file.

    f---want the output to go to a file rather than to stdout.

    eg: 1)jar cf myjar.jar query_maintain_insert.htm

    2)jar cvf myjar.jar query_maintain_insert.htm

    v---Produces verbose(详细的) output.

    3)jar cvf myjar.jar query_maintain_insert.htm mydirectory

    4)jar cv0f myjar.jar query_maintain_insert.htm mydirectory

    0---don't want the JAR file to be compressed.

    5)jar cmf MANIFEST.MF myjar.jar yahh.txt

    m---Used to include manifest information from an existing manifest file.

    6)jar cMf MANIFEST.MF myjar.jar yahh.txt

    M---the default manifest file should not be produced.

    7)jar cvf myjar.jar *

    *---create all contents in current directory.

    2. 察看jar文件

    jar tf jar-file

    t---want to view the Table of contents of the JAR file.

    eg: 1)jar vft yahh.jar

    v---Produces verbose(详细的) output.

    3. 提取jar文件

    jar xf jar-file [archived-file(s)]

    x---want to extract files from the JAR archive.

    eg: 1)jar xf yahh.jar yahh.txt(仅提取文件yahh.txt)

    2)jar xf yahh.jar alex/yahhalex.txt(仅提取目录alex下的文件yahhalex.txt)

    3)jar xf yahh.jar(提取该jar包中的所有文件或目录)

    4. 修改Manifest文件

    jar cmf manifest-addition jar-file input-file(s)

    m---Used to include manifest information from an existing manifest file.

    5. 更新jar文件

    jar uf jar-file input-file(s)

    u---want to update an existing JAR file.

    war包

    1.war包:标准格式:index.jsp(可选)+ META-INF目录 + WEB-INF目录

    index.jsp可有可无。

    META-INF目录下包括一个MANIFEST.MF文件,此目录和文件在用jar工具打包时会自动生成。

    WEB-INF目录下包括classes目录,lib目录,web.xml文件,web.xml文件格式如下:

    xmlns="http://java.sun.com/xml/ns/j2ee"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee

    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

    index.jsp

    打war包方法:jar -cvf XX.war 所包含文件

    ear包

    2.ear包:标准格式:war包+

    META-INF目录

    META-INF目录下包括一个MANIFEST.MF,application.xml,ibm-application-bnd.xmi,ibm-application-ext.xmi,was.policy。

    application.xml:

    /p>

    Application 1.3//EN"

    "http://java.sun.com/dtd/application_1_3.dtd">

    AsiainfoBICASApplicationEAR

    This is the Asiainfo

    BICAS Application Server Application.

    example.war

    /abc

    ibm-application-bnd.xmi:

    xmlns:xmi="http://www.omg.org/XMI"

    xmlns:applicationbnd="applicationbnd.xmi"

    xmlns:common="common.xmi"

    xmlns:application="application.xmi" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xmi:id="Application_ID_Bnd">

    ibm-application-ext.xmi:

    xmlns:xmi="http://www.omg.org/XMI"

    xmlns:applicationext="applicationext.xmi"

    xmlns:application="application.xmi"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xmi:id="Application_ID_Ext" sharedSessionContext="false">

    was.policy:

    // WebSphere Application Server Security Policy for the Default Application

    // Required for Snoop Servlet's call to get User Name from getUserPrincipal()

    打包方法:jar -cvf XX.ear

    XX.war META-INF

    展开全文
  • 1、将war包移动到一个干净的路径下,解压命令: jar xvf aaa.war 2、将解压的war包打包为原来的war包,命令如下 jar -cvf aaa.war . 一定要记住一定要记住后面空两格加一个 . jar cvf aaa.war */ 这个没有点,可以...

    1、将war包移动到一个干净的路径下,解压命令:
    jar xvf 名字.war

    2、将解压的war包打包为原来的war包,命令如下
    jar -cvf 名字.war . 一定要记住一定要记住后面空两格加一个 .
    jar cvf 名字.war */ 或者使用这个

    展开全文
  • 工程打war包方法

    2020-12-28 23:51:39
    (1)在命令行中运用Jar命令假定有一个Web应用:C:\myHomemyHome/WEB-INF/……myHome/image/……myHome/src/……myHome/index.jsp在命令行窗口下执行如下命令:C:\>...jar cvf myhome.war */ .解释:jar ...

    (1)在命令行中运用Jar命令

    假定有一个Web应用:C:\myHome

    myHome/WEB-INF/……

    myHome/image/……

    myHome/src/……

    myHome/index.jsp

    在命令行窗口下执行如下命令:

    C:\>cd/d  c:\myHome

    C:\myHome\>jar      cvf      myhome.war      */     .

    解释:jar      cvf      [A->war包名].war   [B->资源文件及文件夹]      [C->将要生成war包的目标文件夹]

    “*/”(B->)代表当前目录(C:\myHome)下的所有文件及文件夹。

    “.”    (C->)表明将要在当前目录中生成war包。

    操作完成后,找到C:\myHome下新生成的myhome.war,将其拷入TOMCAT_HOME/webapps/下。然后启动Tomcat即可。

    (2)利用IDE工具打包,如Eclipse

    右键点击你想打包的文件或者项目,选择“导出...”,在弹出的对话框中选择“WAR文件” ,上面有许多选项,还可以选“EAR”,“JAR”.

    展开全文
  • Java项目打war包方法

    2020-12-19 05:34:23
    我们知道Java项目打war包可以在Eclipse和MyEclipse工具中自动打包,就是右键,然后导出war包就可以了,可是我发现我的一个项目打war包的过程中遇到点小麻烦,导出的war包打开之后,里面少了很多东西,明显有问题。...

    最近好忙好忙,整理下心情给大家分享下自己在工作中遇到的一点小技巧,希望给遇到同样麻烦的同学一点帮助。

    我们知道Java项目打war包可以在Eclipse和MyEclipse工具中自动打包,就是右键,然后导出war包就可以了,可是我发现我的一个项目打war包的过程中遇到点小麻烦,导出的war包打开之后,里面少了很多东西,明显有问题。那怎么办呢,网上搜了许多偏方都没效果,请教同事,大家也没遇到过这种状况。

    除了这种方法,我们可以运用DOS命令来手工打war包:

    首先,打开DOS命令行,敲入“jar”,我们发现它提示不是内部或外部的命令这样的错误,这时八成是你的JAVA环境没有配置好,我们可以用JAVA_HOME方式或者直接在Path路径里配置,等配置好,(注意你的JDK版本,里面有jar.exe和javac.exe的版本适合)我们再敲入"jar",会出现如下效果,说明配置成功。

    下面我们用DOS命令进入到你的项目中

    好,现在我们来运行命令手工打包

    回车键入,等待它自动执行完:

    OK,打包完成,现在我们来看下目录下的war包

    已经打好了,我们放到Tomcat的Webapps下,启动tomcat,自动解压完成。OK,大功告成。

    展开全文
  • war包配置修改系统及方法【技术领域】[0001]本发明涉及升级文件配置修改,尤其涉及一种war包配置修改方法及系统。技术背景[0002]随着互联网技术的发展,移动终端越来越多,后台服务器的数量也越来越多。现在很多的...
  • 搜索热词jar文件包括java普通类、资源文件和普通文件,在maven中即是打包src/main/java和src/main/resources资源文件夹下的所有文件。在打包的时候会自动生成MATA-INF文件夹,用于存储...但是需要注意war引用war的...
  • //启动部署的时候可以用这个 // // Server server = new Server(8080); // // WebAppContext context = new WebAppContext(); // // context.setContextPath("/compare"); // // context.setWar...
  • unzip -o test.zip -d tmp/ linux解压war包的命令 网上很多人说用jar包解压,但jar命令解压时不能指定目录,推荐使用unzip解压war包。 unzip -d 指定目录 [root@oracle upload]# unzip -oq common.war -d common ...
  • 反编译 war 成传统项目的方法

    千次阅读 2020-12-29 08:59:21
    方法第一步:解压war 其实就是 zip 压缩包,用 zip 解压。第二步:反编译查看 war 下面的 WEB-INF/classes,用 http://java-decompiler.github.io/ jd-gui 直接打开一个 class 文件,自动反编译文件下所有文件。...
  • 亲测在windows环境和linux环境不一样Windows第1步: 用maven打war包 (假如得到的war包名为: hello-back.war)第2步: 把war包拷贝到tomcat安装的webapps目录下第3步: 启动tomcat (可以在conf/server.xml修改端口号)第4...
  • maven打包出来是jar而不是war包解决方法 解决方案
  • 有关于 Maven 项目的打包部署,我这里用的是 Eclipse 编辑器,以此来做个简单的记录。... 本文标题: Maven项目打包成war包部署到Tomcat的方法 本文地址: http://www.cppcns.com/ruanjian/java/231566.html
  • 1.什么是war文件?如果一个Web应用程序的目录和文件非常多,那么将这个Web应用程序部署到另一台机器上,就不是很方便了,我们可以将Web应用程序打包成Web归档(WAR)文件。这个过程和把Java类文件打包成jar文件的过程...
  • war包编译和打包发布

    2021-03-02 11:02:39
    用IDE写一个基本的webApp要学习java web...最好的方式,就是用IDE做一个最简单的war包,解压看看文件结构,再手动打个war包试试,梳理下编译流程。我用的IDE是IntelliJ,步骤是 File | new | project |enterprise ...
  • 二、部署方法 WAR包安装方法的推荐配置: 至少是Java 7,但建议使用Java 8 内存大于512MB 安装准备: 安装JDK、Tomcat 配置好tomcat的虚拟目录,端口可以被正常访问 安装方法: 1.网站根目录创建jenkins的webroot...
  • 说明:Spring Boot由于内嵌了如Tomcat,Jetty和Undertow这样的容器,也...Spring Boot部署在服务器上主要分为两种方式:一是打成jar包发布,二是打成war包发布,第一种方式只需要在该服务器中运行java -jar+部署项...
  • 将maven项目打成war包

    2021-05-16 06:40:04
    //修改成war包war//plugins中添加新的配置org.apache.maven.pluginsmaven-war-plugin2.2web/WEB-INF/web.xmlweb//添加servlet依赖javax.servletjavax.servlet-api3.1.0如何使用IDEA将maven项目打成war包1....
  • SpringBoot打包成war包,步骤超级详细问题:使用maven构建SpringBoot打包成war包,发布到服务器上,总是报错第一步:第二步:第三步:第四步: 问题:使用maven构建SpringBoot打包成war包,发布到服务器上,总是报错...
  • 存在一个坑: 官网文档 指出以下前3步做法,但是这样只可以打出可运行的jar包,要打出war包还要在文档后面的链接跳到另一个页面,才能找到第四步的做法,也就是最终能够打出war包,可能有些朋友有些粗心没找到第四步...
  • (一)springboot web项目打jar1、打包两种打包方式maven命令打包切换目录到工程根下,pom.xml所在位置,运行maven的打包命令mvn clean package -Dmaven.test.skip=trueIDEA 工具执行maven任务打包会在xxx项目模块下...
  • “史上最全“ Springboot打包war包并部署Linux“史上最全“ Springboot打包war包并部署Linux1、配置打包排除test测试类org.apache.maven.pluginsmaven-surefire-plugintrue2、排除tomcat依赖org.springframework....
  • Maven项目打包及jar包与war包的区别

    千次阅读 2021-03-09 18:21:55
    https://blog.csdn.net/gm371200587/article/details/80422390今日部署项目打包,maven项目,老大给了俩bat启动文件,路径配好后,打包一直有毛病,原因未知,只好用传统方式继续,顺手记录下打包方法war包及jar包...
  • 展开全部jar包和war包的区别32313133353236313431303231363533e4b893e5b19e31333365633865:1、war是一个web模块,其中需要包括WEB-INF,是可以直接运行的WEB模块;jar一般只是包括一些class文件,在声明了Main_...
  • api的依赖,用来打war包4、打成war包访问的时候加工程名(==可以加或者不加==)二、修改启动类继承SpringBootServletInitializer并重写其中的configure方法三、打包方式1:方式2:四、部署注意: 一、pom.xml的修改 1...
  • java war 打包、解压命令(转载) 经常将工程打包成war包,打包如下: // 将当前目录打包成war包 jar cvf temp.war */ . 命令格式: java cvf 打包文件名称 要打包的目录 打包文件保存路 ... arttemplate与webpack...
  • 在对SpringBoot中的Maven项目打包的时候,虽然运行显示success但是target文件夹中并没有生成War包。经过百度之后,解决方法如下。 在SpringBoot的启动类中继承SpringBootServletInitializer类 重写configure方法,...
  • 1.概述在平时的开发中,有一些Jar因为种种原因,在Maven的中央仓库中没有收录,所以就要使用本地引入的方式加入进来。2. 拷贝至项目根目录项目根目录即pom.xml文件所在的同级目录,可以在项目根目录下创建文件夹...
  • 将用户tomcat赋予上传的war包所有权限,如所有者是tomcat,所有组是tomcat,其命令:chown -R tomcat war包 》3.su –c /usr/local/tomcat/bin/startup.sh tomcat -------以tomcat用户启动服务,war包会自动被...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 90,945
精华内容 36,378
关键字:

war包使用方法