`

JAVA中jar文件的编写和应用

阅读更多

 本文摘自http://whcs.bokee.com/2603974.html   作者: 爱玩java的老鼠

JAVA中jar文件的编写和应用
我想JAVA的爱好者,尤其是初学者大都有过这样的经历,就是喜欢JAVA编程语言(这个人的情况可能不一样),但是有时候总会觉得JAVA的优点便是她的“致命”的缺点。大家的信念依旧是“一次编译,到处运行”但是就是因为至一点JAVA失去了好多,我们也失去了好多。也许大家都知道,现在业界最推崇的还是微软的技术微软的产品。.net/c#/.vb/vb.net还是最流行的语言,最受欢迎的软件开发语言。因为这些语言都太好学太好用了。不像JAVA语言那么难懂难用。在软件开发提出高效的组件开发的时候,人们都很难想象用JAVA的EJB就行开发,因为不成熟的技术和不健全的API,让程序员很难入手。虽然有JBuilder这样优秀的开发工具,但是有时还是很难着手的(因为他们的体系太复杂,对于一般人来说会有一点的难度,当想开发应用程序的时候)。JAVA的体系够复杂了。因为“跨平台=性”所以JAVA语言或者说JDK不支持产生.exe文件的相应的API(应为生成.exe文件总要和系统的硬件相关,这是JAVA语言所不用许的)。不过你也没有必要失望,你但可以使用JBuilder 或者IBM和软软的支持JAVA语言开开的工具就行程序开发与设计,或者采用JAVA的.jar技术进行相关的操作,即生成“双击就可以运行的.jar文件”,这不失一件很好的事情。(据我了解JBuilder是不能运行在256内存的机器上的,可见实在太耗内存)。好了,现在咱们言归正传。总之,。jar 文件还是很管用的。下让面咱们开始进入主题。

一、制作jar文件

    在制作.jar 文件之前你必须先编译好你的.java文件。假设我们的文件目录是c:\java\myJava\hello\Hello.java
现在假设Hello.java的文件内容为:

/*
*
* Hello.java
*
*/


public class Hello {

public static void mian(String[] args){

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

  }

}

在进行.jar 制作的时候你必须把路径切换到Hello.java 所在的文件目录的外一层文件夹(.jar文件要在Dos才能创建(windows平台)),即myJava
运行如下的命令可以把当前文件夹下的所有内容都包含在.jar 文件内。

c:\java\myJava>jar cf Hello.jar .

    说明一下:命令行中 jar 是生成.jar文件的程序的调用接口。 cf 是一对可选项(options)后面的Hello.jar 就是我们给文件取的名字了,最后一个点号(.)指示工具将当前目录下的所有文件都放进jar文件,jar工具进行地归操作,当文件夹中含有不止一个文件时。



二、察看jar文件
    其实,jar文件是采用WinZip 的格式进行文件压缩的,所以你可采用WinZip 解压缩文件的,还可以利用如下的命令行察看:

c:\java\myJava>jar tf Hello.jar
你会看到本地机子里的jvm 的版本以及其生产厂家信息
还有 Main-Class: Hello.Hello 等信息。


三、把文件移到你喜欢的目录
    假设你想把jar 文件移到目录:d:\Java2\myFirst 下面,请运行如下的命令:
d:\Java2\myFirst> jar xf c:\java\Hello.jar
说明一下:jar 文件可以封闭,就意味着指定的包中的每一个类必须包含在同一个目录下。

四:内容清单 manifest.fm
    manifest.fm 文件是由键值对组成的。其中包含前面所说的jvm 的版本号 / 创建他的厂商等。

五、增加清单的内容
   当若我们编辑了如下的一个addContents.txt 文件

Name: myJava\Hello\
Sealed: true

则可以通过如下命令把其加入到我们的清单文件中:

c:\java\myJava>jar umf addContents.txt Hello.jar

六、运行jar文件

你可以通过以下的方式来运行jar文件:
c:\java\myJava>java -classpath . -jar Hello.jar

说明:需要命令的 -classpath . 部分是因为类的路径环境变量中没有(.)路径。


也可以
c:\java\myJava\Hello>java -jar Hello.jar

如果你的电脑是windows xp 版本 你还可以直接到你的c:\java\myJava\Hello 下双击Hello.jar 文件 但是你看不到运行的结果
(图形界面程序可以这样运行),在windows 2000 上面,jar 文件被视作.zip 文件所以你一双击他就会把你的文件解压,而不是运行文件。所以你只有采用命令行的方式了。


运行命令之后,你会看到在你的屏幕上显示的
Hello, World !
字样。


结束语:

到这里我们jar 文件的创建和运行等相关的介绍算结束了。你可以试着去验证一下。然后创建复杂的程序,比如具有界面的高级程序。


如果你对jar 文件 很感兴趣 或者 想对她有更深刻的了解那么你可以在dos 低下敲入 jar 察看更多的帮助信息和许多options 的解释。


jar 帮组文档内容:


C:\>jar

用法: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/ .

分享到:
评论

相关推荐

    Java打包成jar文件,以及将jar文件导出为exe文件方法汇总[汇编].pdf

    Java 打包成 jar 文件和将 jar 文件导出为 exe 文件的方法汇总 本文档将详细介绍 Java 打包成 jar 文件和将 jar 文件导出为 exe 文件的方法汇总。Java 是一种流行的编程语言,广泛应用于软件开发、Android 应用开发...

    java打包jar文件实例

    在Java开发中,JAR文件通常用于封装库、应用程序或者Java小应用程序(Applet)。本实例将通过详细步骤介绍如何创建并使用JAR文件。 首先,你需要确保已经编写了Java源代码并编译为.class文件。例如,这里有两个文件...

    sh脚本启动java -jar

    这个标题和描述表明我们要讨论的是如何通过编写一个简单的Shell脚本来启动Java的JAR文件。这通常适用于运行独立的、基于Java的程序,比如服务器应用或桌面应用。下面我们将详细探讨这个主题。 首先,了解`java -jar...

    JAR文件包及jar命令详解

    总结来说,JAR文件是Java开发中不可或缺的一部分,无论是为了打包应用程序,还是为了实现库的分发,都提供了极大的便利。了解并掌握如何创建和使用可执行的JAR文件,对Java开发者来说至关重要。通过正确的配置和使用...

    java制作jar可执行应用

    使用Java编程语言编写应用程序,每个类文件以.java为扩展名。类文件通常包含公共类(public class),这些类定义了应用程序的主入口点,例如包含`public static void main(String[] args)`方法的类。 4. **编译...

    java的jar包

    JAR文件包含编译后的.class文件,元数据(如MANIFEST.MF文件),以及其他资源文件,如图片、声音或配置文件。这些打包在一起的文件可以被Java虚拟机(JVM)作为一个单元来处理,提高了代码的可移植性和管理性。 在...

    jar1jar1jar1jar1jar1jar1jar1jar1jar1jar1jar1jar1jar1jar1jar1

    【标题】:“jar1jar1jar1jar1jar1jar1jar1jar1jar1jar1jar1jar1jar1jar1jar1jar1...10. **构建工具**:现代Java开发中,如Maven和Gradle这样的构建工具可以自动管理JAR文件的创建、依赖和打包过程,使得开发更加高效。

    Java打Jar包方法和实例

    Java打Jar包是Java开发过程中常见的一项操作,它将多个类文件、资源文件等打包成一个可执行的JAR(Java Archive)文件,方便分发...在实际开发中,根据项目需求选择合适的方式,能够有效地管理和部署你的Java应用程序。

    无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsp/jstl

    标题中的问题“无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsp/jstl”指出,这可能是Java Web应用开发中遇到的一个常见错误,涉及到JSP(JavaServer Pages)和JSTL(Java...

    Java 动态加载jar文件示例

    下面我们将深入探讨Java动态加载jar文件的原理和实践方法。 首先,我们需要理解Java的类加载机制。Java中的类是由类加载器(ClassLoader)负责加载的。默认情况下,Java虚拟机(JVM)提供了三个内置的类加载器:...

    可以直接运行java jar Demo

    这些文件在Java应用中起着核心作用,因为它们允许开发者将整个应用或库封装到一个可分发的单元中。运行jar文件时,Java虚拟机(JVM)会加载并执行其中的主类,这个主类通常由manifest文件指定,manifest文件是一个...

    编写java程序jar包

    一个jar文件本质上是一个遵循特定格式的ZIP文件,包含了编译后的`.class`文件,这些文件是Java源码经过编译后的结果。除此之外,jar包还可能包含资源文件(如图片、配置文件等)和相关的元数据,如清单文件...

    Java_Jar包

    7. **类路径(Classpath)**:在Java环境中,JAR文件需要被添加到类路径中,才能被Java虚拟机识别并加载。这可以通过环境变量、命令行参数或程序内部设置来完成。 8. **依赖管理**:在大型项目中,许多JAR文件可能...

    jarjar-方便Java打包工具,自定义修改jar包包名

    Java开发过程中,打包工具起着至关重要的作用,它们帮助开发者将源代码编译、整合资源并打包成可执行的JAR文件。其中,"jarjar"是一个非常实用的工具,专为Java程序员设计,用于方便地对JAR文件进行操作,如重命名类...

    替换jar包包名的jar以及rule规则文件

    在Java开发中,有时我们需要对已有的JAR文件进行处理,比如更改其中的类路径、重命名包或者合并多个JAR文件。在这种情况下,`jarjar`工具就显得非常实用。`jarjar`是一个用于处理Java JAR文件的命令行工具,它允许...

    Shell执行/调用Java/Jar程序例子

    这篇博客“Shell执行/调用Java/Jar程序例子”探讨了如何使用Shell脚本来启动和控制Java应用程序,特别是JAR文件。这里我们将深入讲解相关知识点。 1. **Shell脚本基础** Shell脚本是Linux或Unix操作系统中的命令行...

    java打jar包批处理文件

    JAR文件的主要目的是便于分发、存储和运行Java应用程序或库。它还可以包含元数据,如清单文件(MANIFEST.MF),用于指定主类、版本信息等。 创建JAR文件的一般步骤如下: 1. **编写源代码**:在Java项目中,开发者...

    jar文件 变成dll

    标题中的“jar文件变成dll”指的是将Java编写的类库转换为.NET平台可使用的动态链接库(DLL)文件。在.NET框架中,DLL是共享代码的主要形式,可以在多个应用程序之间重用。Java的jar文件则包含了编译后的字节码,...

    dos命令测试java jar文件 命令行下运行JUnit测试 命令运行java

    总之,熟练掌握DOS命令来测试Java JAR文件和运行JUnit测试是Java开发者日常工作中不可或缺的部分。无论是进行简单的单个测试还是复杂的持续集成流程,都能大大提高代码质量并减少错误。通过不断地实践和学习,你可以...

    Delphi XE7调用JAVA的JAR

    然而,当需要与Java环境交互时,如何在Delphi XE7中调用Java的JAR文件就成为一个挑战。本篇将深入探讨如何实现这一目标。 首先,了解Java本地接口(JNI)是关键。JNI允许Java代码调用本地(如C/C++)代码,反之亦然...

Global site tag (gtag.js) - Google Analytics