JAR和jad格式

来源:互联网 发布:流程图软件有哪些 编辑:程序博客网 时间:2024/05/17 22:32
介绍
  JAR(Java Archive,Java 归档文件)是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。为 J2EE 应用程序创建的 JAR 文件是 EAR 文件(企业 JAR 文件)。
  JAR 文件格式以流行的 ZIP 文件格式为基础。与 ZIP 文件不同的是,JAR 文件不仅用于压缩和发布,而且还用于部署和封装库、组件和插件程序,并可被像编译器和 JVM 这样的工具直接使用。在 JAR 中包含特殊的文件,如 manifests 和部署描述符,用来指示工具如何处理特定的 JAR。
  一个 JAR 文件可以用于
  □ 用于发布和使用类库
  □ 作为应用程序和扩展的构建单元
  □ 作为组件、applet 或者插件程序的部署单位
  □ 用于打包与组件相关联的辅助资源
  JAR 文件格式提供了许多优势和功能,其中很多是传统的压缩格式如 ZIP 或者 TAR 所没有提供的。它们包括:
  ·安全性。
  可以对 JAR 文件内容加上数字化签名。这样,能够识别签名的工具就可以有选择地为您授予软件安全特权,这是其他文件做不到的,它还可以检测代码是否被篡改过。
  ·减少下载时间。
  如果一个 applet 捆绑到一个 JAR 文件中,那么浏览器就可以在一个 HTTP 事务中下载这个 applet 的类文件和相关的资源,而不是对每一个文件打开一个新连接。
  ·压缩。
  JAR 格式允许您压缩文件以提高存储效率。
  ·传输平台扩展。
  Java 扩展框架(Java Extensions Framework)提供了向 Java 核心平台添加功能的方法,这些扩展是用 JAR 文件打包的(Java 3D 和 JavaMail 就是由 Sun 开发的扩展例子)。
  ·包密封。
  存储在 JAR 文件中的包可以选择进行密封,以增强版本一致性和安全性。密封一个包意味着包中的所有类都必须在同一 JAR 文件中找到。
  ·包版本控制。
  一个 JAR 文件可以包含有关它所包含的文件的数据,如厂商和版本信息。
  ·可移植性。
  处理 JAR 文件的机制是 Java 平台核心 API 的标准部分。
[编辑本段]JAR在手机电子书的应用
  JAVA手机电子书的格式一般为JAR和JAD,其中JAD文件是一个说明文件,描述jar文件的信息。部分手机不支持直接读取JAR(这是手机安全策略引起的),这时则需要JAD文件。这样的手机只在少数。java运行在java虚拟机之上,也就是JVM,而很多低端机型也可以支持java,因此就注定了java格式的适用范围相当广泛。由于java可以提供丰富的交互行为,因此在支持图文,多媒体方面做的最为优秀,另外,阅读器和文本被打包在一起(jar),因此只需安装即可阅读,无需另外安装阅读器或者下载电子书。
  手机和以前的电子书阅读设备相比,其最大优势就是方便,能随身携带。而其不足之处就是屏幕阅读限制,以及可阅读资源少。目前的手机设计,呈现大小两极分化的局面,一种趋势是越来越小,走灵巧、精致之路,另一种趋势则是越来越大,走功能丰富与完善之路,向PDA靠拢,无疑只有这种趋势才适合手机电子书的发展。而对目前大部分用户而言,以每屏显示几行的手机来阅读上万字的电子书,仍然有很大的不便。
  目前能制作电子书的软件有掌上书院开发的mBookMaker等,想将自己的文字转换为电子书的朋友不妨一试。
  由于不同品牌的手机硬软件不同,并非所有的手机都能支持手机电子书。相对而言,诺基亚,摩托罗拉等品牌手机,只要能支持JAVA,那就一定有适合的电子书。
  但也有一些已经非常优秀的JAR读书软件,可以直接读取TXT.HTML.UMD等格式的小说。例如Anyview3.0就是非常不错的手机电子书软件
  制作手机电子书需要一定的耐心,如果你没有耐心,也可以直接去一些提供已经做好的手机电子书下载的网站:
[编辑本段]常见的 jar 工具用法
  jar cf jar-file input-file...
  用一个单独的文件创建一个 JAR 文件
  jar cf jar-file dir-name
  用一个目录创建一个 JAR 文件
  jar cf0 jar-file dir-name
  创建一个未压缩的 JAR 文件
  jar uf jar-file input-file...
  更新一个 JAR 文件
  jar tf jar-file
  查看一个 JAR 文件的内容
  jar xf jar-file
  提取一个 JAR 文件的内容
  jar xf jar-file archived-file...
  从一个 JAR 文件中提取特定的文件
  java -jar app.jar
  运行一个打包为可执行 JAR 文件的应用程序


 JAD(应用程序开发联系会议)
  召开应用程序开发联系会议 应用程序开发联系( J A D)会议是范围广的、简便的专题讨论会( w o r k s h o p),也是分析人员与客户代表之间一种很好的合作办法,并能由此拟出需求文档的底稿。该会议通过紧密而集中的讨论得以将客户与开发人员间的合作伙伴关系付诸于实践( Wood and Silver 1995)。
  出自《软件需求》第三章-》需求获取
  Java 应用程序描述符 (JAD)
  JAD 文件包含 MIDlet 套件的标题信息,例如开发应用程序的公司、应用程序名称和大小。在将应用程序下载到设备上时,将先下载和读取描述符,然后再下载和读取包含 MIDP 应用程序的 JAR 文件。在装入 MIDlet 套件的完整 JAR 文件之前,移动设备上的应用程序管理软件可使用 JAD 文件验证 MIDlet 是否适用于该设备。JAD 还向 MIDlet 提供特定于配置的属性(参数),而无需修改 JAR 文件。这样设备便可以确认是否具有足够的空间用于存放应用程序,以及是否应下载完整的应用程序。
  Java 文件的扩展名为 .jad。
  JAD是软件配置信息文件,JAR才是真正的程序,你可以把两个文件放在一起安装JAD,也可以直接安装JAR文件。
  JAD 文件为纯文本格式,可用记事本打开。一个 JAD 文件至少需要包含包含如下属性:
  MIDlet-Name。向用户标识 MIDlet 的 MIDlet 套件名称。
  MIDlet-Version。MIDlet 套件的版本号。应用程序管理软件使用该版本号执行安装操作和升级,以及与用户进行通信。
  MIDlet-Vendor。 提供 MIDlet 套件的组织。
  根据项目配置所支持的 MIDP 版本,还可以使用其他属性:
  MIDlet-JAR-URL。此 MIDlet 套件的 JAR 文件的位置和名称。
  MIDlet-JAR-Size。通过此 MIDlet 套件生成的 JAR 文件的大小。每次生成 JAR 文件后,都会更新此只读属性。
  MicroEdition-Profile。所需的 Java ME 配置文件,它使用与系统属性 microedition.profiles 相同的格式和值(例如 MIDP-1.0)。
  MicroEdition-Configuration。 所需的 Java ME 配置,它使用与系统属性 microedition.configuration 相同的格式和值(例如 CLDC-1.0)。
  MIDlet-Description。MIDlet 套件的描述。
  MIDlet-Icon。JAR 文件内的 PNG 文件名,用于表示 MIDlet 套件。应用程序管理软件显示了标识此套件的图标。
  MIDlet-Info-URL。一个 URL,提供进一步描述 MIDlet 套件的信息。
  MIDlet-Data-Size。MIDlet 所需的持久性数据的最少字节数。设备可以根据其自身的策略提供额外的存储。
  此外,JAD还是一个简单易用的反编译工具,可以将二进制字节码文件转换成java源文件。
  在众多的JAVA反编译工具中,有几种非常著名的工具使用了相同的核心引擎——JAD,其中主要包括:Front End Plus、mDeJava、Decafe Pro、Cavaj Java Decompiler、DJ Java Decompiler、NMI’s Java Class Viewer和国产的JAVA源代码反编译专家等等。
  JAD本身是一个命令行工具,没有图形界面,上述的这些工具大多是在JAD内核的基础之上加了一个图形界面而已。这么多种产品的共同选择,足可证明JAD在JAVA反编译领域中的尊贵地位。
  一、基本用法
  Usage:jad [option(s)]
  直接输入类文件名,且支持通配符,如下所示。
  c:/Java/>jad example1.class
  c:/Java/>jad *.class
  结果是将example1.class反编译为example1.jad。将example1.jad改为example1.Java即得源文件。
  二、Option -o
  不提示,覆盖源文件
  三、Option -s
  c:/Java/>jad -sJava example1.class
  反编译结果以.Java为扩展名。
  四、Option -p
  将反编译结果输出到屏幕
  c:/Java/>jad -p example1.class
  将反编译结果重定向到文件
  c:/Java/>jad -p example1.class>example1.Java
  五、Option -d
  指定反编译的输出文件目录
  c:/Java/>jad -o -dtest -sJava *.class
原创粉丝点击