zoukankan      html  css  js  c++  java
  • jar包和war包

    Jar (Java archive), 将实现了某功能的所有类及辅助资源用ZIP压缩形式打包而成的一个文件, 便于代码的管理和重复使用。当使用别人提供的jar时,只需要在classpath环境变量中添加这个jar文件,java虚拟机会自动在内存中解压这个jar包,把这个jar文件当作一个路径,在这个路径中查找所需要的类。

    Jar通常包括class文件和META-INF 目录。META-INF目录中的MANIFEST.MF文件,是JAR包的描述文件。它包含了JAR文件的内容描述,并在运行时向JVM提供应用程序的信息。META-INF还可以包含Maven的pom文件。

    jar包内部结构:

     

    MANIFEST.MF文件简介

    以Manifest-Version属性开头 ;每行都是键值对,最长72个字符。超过需要续行,下一行以空格开头,以空格开头的行都会被视为前一行的续行。每行都以回车结束,否则该行将会被忽略 。使用空行分隔主属性和package属性,class 要以.class结尾,package 要以 / 结尾 ,使用"/"而不是点分隔package 和class。

    Class-Path管理JAR的依赖包,路径使用"/"分隔目录,空格分隔多个包,与平台无关 。

    Main-Class:指定程序的入口,用于创建可执行的jar包。

     

    War (web archive),用zip格式压缩封装整个web应用,通常一个WAR文件就是一个Web应用程序。包含 Servlet、HTML页面、JSP页面、JSP标记库、JAR库文件、图像文件以及组成Web应用程序的其他资源。部署到另一台机器上,只需复制一个war文件放在webapps或者work目录,tomcat启动时会自动解压。

    war引用war时会将被引用的war的资源全部拷贝到当前war的相同目录下,重名文件会被替换。

    War包内部结构:

      

    以上皆为个人理解,如有错误之处,欢迎留言指正。
  • 相关阅读:
    Metasploit命令大全
    nmap所有参数详解
    Kali Linux 命令集
    十大编程算法助程序员走上大神之路
    新入行程序员需要知道的十个秘密
    浅谈c#枚举
    php 常用的系统函数
    php大型网站如何提高性能和并发访问
    【转】Oracle + PHP Cookbook(php oracle clob 长度超过4000如何写入)
    干货:小程序开发文档和设计指南要点详解
  • 原文地址:https://www.cnblogs.com/kevin2chen/p/6539351.html
Copyright © 2011-2022 走看看