如何用jar命令对java执行jar包命令工程进行打包

& & & & 有时候为了更方便快捷的部署和执行Java程序,要把java应用程序打包成一个jar包。而这个基础的操作有时候也很麻烦,为了方便java程序员们能够方便的打包java应用程序,下面对jar命令进行介绍,并举出几个简单例子针对不同情况进行打包。
&&&&&&&&一.&jar命令用法:
&&&&&&&&&在cmd命令窗口下输入jar,回车,就会提示改命令的用法:
&&&&&&&&二.例子(这里介绍的都是生成双击可执行的jar包):
&&&&&&& 1.首先介绍如何在命令行下执行打包程序。
&&&&&&&&1.1.没有包结构的最简单的工程。
&&&&&&&&&&&&(1)在c:盘下新建文件“HelloWorld.java”:
1&public&class&HelloWorld
3&&&&&public&static&void&main(String[]&args){
4&&&&&&&&&System.out.println(&Hello&world!&);
&&&&&&&&&&&&(2)在命令行下输入c:\javac HelloWorld.java,在c:盘下编译生成“HelloWorld.class”。
&&&&&&&&&&&&(3)在c:盘下新建文件“menefest”(没有后缀名):
&&&&&&&&&&&
Main-Class:&HelloWorld
&&&&&&&&&&&&注意最后要有一个空行,否则会出现找不到类的错误。
&&&&&&&&&&&&&(4)打包:输入c:\jar cvmf menifest HelloWorld.jar HelloWord.jar HelloWorld.class,在c:盘下生成“HelloWorld.jar”。
&&&&&&&&&&&&&(5)执行:输入c:\java -jar HelloWord.jar。屏幕回显“HelloWorld”。
&&&&&&&&1.2.有包结构的java工程。
&&&&&&&&&&&&(1)在c:\com\gosyl\demo\下新建文件“HelloWorld.java”:
package&com.gosyl.
public&class&HelloWorld{
&&&&public&static&void&main(String[]&args){
&&&&&&&&System.out.println(&HelloWorld&);
&&&&&&&&&&&&(2)在命令行下输入c:\javac com/gosyl/demo/HelloWorld.java,在c:\com\gosyl\demo\文件夹下编译生成“HelloWorld.class”。
&&&&&&&&&&&&(3)在c:盘下新建文件“menefest2”(没有后缀名):
Main-Class:&com.gosyl.demo.HelloWorld
&&&&&&&&&&&&注意最后要有一个空行,冒号后面要一个空格。否则会出现找不到类的错误。
&&&&&&&&&&&&(4)打包:输入c:\jar cvmf menifest2 HelloWorld.jar HelloWord.jar com/,在c:盘下生成“HelloWorld.jar”。
&&&&&&&&&&&&(5)执行:输入c:\java -jar HelloWord.jar。屏幕回显“HelloWorld”。
&&&&&&&&1.3.引用到外部jar包的java工程。
&&&&&&&&&&&&(1)在c:\com\gosyl\demo\下新建文件“Car.java”:
&&&&&&&&&&&&&
package&com.gosyl.
public&class&Car
&&&&public&static&void&main(String[]&args){
&&&&&&&&Light.on();&&&&&&&&
&&&&&&&&&&&&(2)在c:\com\gosyl\demo\下新建文件“Light.java”:
package&com.gosyl.
class&Light&
&&&&public&static&void&on(){
&&&&&&&&System.out.println(&Light&is&on!&);
&&&&&&&&&&&&(3)打包1:输入c:\jar cvf& Light.jar&com/gosyl/demo/Light.class,在c:盘下生成“Light.jar”。
&&&&&&&&&&&&(4)在c:盘下新建文件“menefest-car”(没有后缀名):
Main-Class:&com.gosyl.demo.Car
Class-Path:&Light.jar
&&&&&&&&&&&&注意最后要有一个空行,冒号后面要一个空格。否则会出现找不到类的错误。
&&&&&&&&&&&&(5)打包2:输入c:\jar cvmf& menifest-car Car.jar&com/gosyl/demo/Car.class,在c:盘下生成“Car.jar”。
&&&&&&&&&&&&(6)执行:输入c:\java -jar Car.jar。屏幕回显“Light is on”。
&&&&三.总结
&&&&&&&&1.清单文件menifest,对格式要求很高,注意每个冒号后面要有一个空格,文件最后要有一个空行。
&&&&&&&&2.对于引用到外部jar包的工程,需要在manifest中定义好Class-Path属性。
&&&&&&&&3.对于双击.bat文件出现刷屏现象的情况,请直接把.bat文件的内容键入命令行执行。
&&&&&&&&4.对于重复签名的jar包,在META-INF里面会出现多个签名文件,删除掉多余的,保存其中一个才能保证jws正常启动。
&&&&&&&&请参照相关文章此文章貌似有错:
本文已收录于以下专栏:
相关文章推荐
命令行编译运行java、打包jar
本文详细讲述了JAR命令的用法,对于大家学习和总结jar命令的使用有一定的帮助作用。具体如下:
JAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包。当然也是有区别的,JA...
运用DOS命令来手工打war包:
    首先,打开DOS命令行,敲入“jar”,我们发现它提示不是内部或外部的命令这样的错误,这时八成是你的JAVA环境没有配置好,我们可以用JAVA_HOME方式...
背景我们平时使用了在有IDE的环境下编写代码,编译的工作会由IDE自动完成,这样方便了我们工作,但是却使我们忽略了代码是如何执行的本质,或者当电脑上只有jre环境,没有开发环境,就需要在c...
eclipse集成maven常用命令clean,install,一步完成项目清理和打包。在集成工具下使用maven
命令与命令窗口不同,需要将mvn省掉(比如:mvn clean,在工具中直接用cl...
要将一个工程打包成War的格式有好几种方法,在这我就介绍一种较简单的方法,用Jar 命令,
前提条件是你的机子中要安装JDK
具体步骤如下:
1:在系统变量中加入变量JAVA_HOM...
(1)首先,必须保证java的所有路径都设置好,在dos提示符下输入jar -help
出现C:\Documents and Settings\dly&jar -help
非法选项:h
用法:j...
项目打包与发行       当项目完成后接下来的就是打包发行了,应用程序(Application)项目和Eclipse插件项目(plugin)的打包是不同的,本章将分别介绍两者的打包方法,并给出实际的...
在Eclipse下导航窗口中找到要导出的web项目,右击&Export&WAR file&选定存放地点。
将打包好的WAR复制到Tomcat目录/webapps/文件夹中
将WAR解压到该文件夹中
他的最新文章
讲师:汪剑
讲师:刘道宽
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)博客访问: 2839893
博文数量: 419
博客积分: 9916
博客等级: 中将
技术积分: 7189
注册时间:
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: Java
&&&&& 如何把写好的Java程序打包为jar文件呢?有三种方式可以选择:一、命令行的方式:1.打包jar cf JAR文件名称 程序文件名称或者程序所在的文件夹举例:jar cf MyApp.jar /home/xxx/xxx2.查看一个jar文件的内容jar tvf JAR文件名称举例:jar tvf MyApp.jar3.将一个jar文件解压缩jar xf JAR文件名称举例:jar xf MyApp.jar4.往压缩包里面增加文件jar xf JAR文件名称 添加的文件或者其他的jar文件举例:jar xf MyApp.jar Test.class5.更新一个jar文件jar uf JAR文件名称 更新的文件或者其他的jar文件举例:jar uf MyApp.jar Test.class6.运行一个jar程序java -jar JAR文件名称举例:java -jar MyApp.jar7.创建一个可以运行的jar文件首先必须有一个主类(Main Class);接着创建一个叫做MANIFEST.MF的文本,然后把以下内容拷贝进去。Manifest-Version: 1.0Main-Class: YourMainClass这个YourMainClass就是程序中包含main方法的那个class,下面的语句用来创建可执行的jar文件。jar cvfm MyApp.jar MANIFEST.MF 文件或文件夹路径二、用Eclipse来创建1.选择项目,点击右键,选择“export”;2.选择"java-&Runnable JAR file";3.选择保存的路径,点击“Finish”即可。三、Java开源打包工具
IzPack 是一个 Java 安装程序制作工具,能够制作一些简单的安装程序。制作出来的安装程序能在 Unix-like, MacOS X, Windows 等系统平台上运行。
使用JSmooth将做好的JAR包装成EXE。
launch4j是Java应用程序的Windows本地可执行文件 (.exe) 封装器。提供了本地弹出屏幕,应用程序图标,JRE搜索或使用绑定的JRE,启动失败反馈,传递命令行参数,ant脚本。
VAInstall是多平台的安装程序。你要包装起来的软
件可以是可执行的 java class, Windows .EXE, Linux 可执行档,或者是 UNIX shell
档案。使用者可以选择四种安装的介面,graphic, xtra, text 或是 ansi。VAInstall
只需要很少的空间,他不会使用任何大的暂存档案,而且还可以很容易使用反安装功能。
Toolshed是一个既小又简单的JAVA安装制作工具。
AntInstaller通过XML文件定义UI,用Ant做后台。所以ANT所能做的事情AntInstaller同样也胜任。
FreeInstaller能够把JAVA程序打包成多种平台下的应用程序比如UNIX, LINUX 和 Windows NT.
这个工具利用 ANT 来制作在 Windows, MacOS X, Unix 平台上可执行的文件,比如 exe,zip,jar。ROXES ANT Tasks 基于 GPL 发布。
Mini Installer是用来构建JAVA安装程序一个简单类包。整个过程以脚本为驱动,最后结果是一个独特的JAR文件。用户可以通过双击来执行一个类似向导的安装过程。
Antigen (Ant Installer Generator)这个工具结合一个ANT构建脚本与一个GUI来把Java文件打包成可执行的Jar文件。它的主要目的是从Ant脚本创造一个强大的图形安装工具。
Packlet是一个针对Java的简单安装工具。一个Packlet类似于一个zip或tgz文件。它把应用程序打包成一个单一的可分解的压缩文件。Packlet文件能够在任何有安装Java 2运行环境的机器上运行。
Java Service Wrapper可以把Java应用程序安装成一个Windows NT服务或Unix Daemon.它同时还为应用程序提供日记功能,灵活的配置,可靠的运行性能,按需求重新启动,简化应用程序的安装等。
JPackIt可以把Java工程打包成一个可执行的包(如:jar,class或exe).包括所有Java应用程序资源如:代码,图片,属性文件和被引用的第三方包。
One-JAR可以解决如何把一个依赖于多个其它jar文件的应用程序发布成一个单一的可执行Jar文件.它使用一个可定制的类装载器(classloader)来打开在主Jar中的Jar文件包。
Autojar帮助从不同的inputs(如:自身
classes,外部文档等)制作最小的Jar文件。它从一个或多个给定的classes开始,依据字节码(bytecode)递归搜索相关联的
classes,然后从input文档中提取这些Classes,并把它们拷贝到output中. 最终的文档将只包含真正需要的classes.
因而能够保持applet的大小并降低applet的加载时间或者让应用程序独立于第三方类库。
MJAR(Managed Jar Framework)Java软件分发/打包框架。它允许在相同VM内并行部署classloader分离的应用程序。MJAR使用Spring框架来管理内部组件。
阅读(10430) | 评论(3) | 转发(3) |
相关热门文章
给主人留下些什么吧!~~
写的挺好的
sunwei0325: 试试eclipse插件:fatjar.....谢谢告知!
试试eclipse插件:fatjar
请登录后评论。用命令行编译java并生成可执行的jar包
我的图书馆
用命令行编译java并生成可执行的jar包
用命令行编译java并生成可执行的jar包
如果想用java编写一个可视化小程序,碰巧手头没有IDE的话,可以用命令行来完成编译、打包等工作。拿自己编写的“java记事本”为例,介绍一下这个过程:1.编写源代码。编写源文件:NotePad.java并保存,例如:E:\myApp\NotePad.java。程序结构如下:
import java.awt.*;import javax.swing.*;//更多包的导入...
class NotePadFrame extends JFrame {//主界面的设计...}
//其他相关代码...
public class NotePad {public static void main(String[] args) {new NotePadFrame();}}
2.打开终端。打开系统菜单:“开始”-&“运行...”-&输入“cmd”,打开终端。执行如下命令转到源文件所在目录:e:cd myApp
3.编译源文件。输入如下命令进行编译:javac NotePad.java执行成功之后,会在当前目录下生成一系列.class文件。
4.新建包文件夹。输入如下命令新建包文件夹:mkdir test也可在资源管理器新建此文件夹。此文件夹必须与源文件中定义的包名完全一致()。
5.将类文件放到新的文件夹里。在资源管理器里将编译生成的所有.class文件移动到新建的test文件夹。
6.测试程序是否可正常运行。在E:\myApp路径下输入如下命令:java test.NotePad如果可以正常运行程序,就可以进行下一步了。否则应检查上述步骤的正确性。
7.生成可执行的jar包。在E:\myApp路径下输入如下命令:jar -cef test.NotePad NotePad.jar test以上命令及参数的含义如下:jar命令为java自带的专用打包工具;c代表生成新的jar包;e代表可执行的类,亦即main方法所在的类。书写时要加上包名,在本例中是后面的test.NotePad;f代表生成的jar包的名称,在本例中是NotePad.jar。此包名可以随意命名,没有规定;test最后面的这个参数表示将test目录下的所有文件都打包放到新的jar包中。
8.测试jar包是否可正常运行。在E:\myApp路径下输入如下命令:java -jar NotePad.jar如果可以正常运行程序,则说明jar包制作成功。如果已经将“Java(TM) Platform SE binary”关联到.jar文件类型(通过正常安装jdk后都会正确关联),还可以通过双击来执行此类jar包,其感受与exe文件相同。
TA的最新馆藏[转]&[转]&[转]&[转]&[转]&
喜欢该文的人也喜欢博客分类:
有时候,我们会用IDEA来开发一些小工具,需要打成可运行的JAR包;或者某些项目不是WEB应用,纯粹是后台应用,发布时,也需要打成可运行的JAR包。并且,如果依赖第三方jar时,又不希望第三方jar也打入最终的可运行jar包,并且还希望,组织下目录结构(如把第三方jar文件,放到最终可运行jar包的并行目录lib下)
OS: Windows 8.1
JDK: 1.7.0
开发工具: IntelliJ IDEA 13.1.1
1. 选中Java项目工程名称,在菜单中选择 File-&project structure... (快捷键Ctrl+Alt+Shift+S)。
2. 在弹出的窗口中左侧选中"Artifacts",点击"+"选择jar,然后选择"from modules with dependencies"。
3. 在配置窗口中配置"Main Class"。
4. 选择“Main Class”后,选择“copy to the output
and link via manifest”,配置“Directory for META-INF/MAINFEST.MF”,此项配置的缺省值是:D:\workshop\DbUtil\src\main\java,需要改成:D:\workshop\DbUtil\src\main\resources,如果不这样修改,打成的jar包里没有包含META-INF/MAINFEST.MF文件,这个应该是个IDEA的BUG(参考:),配置完成后如下图所示,点击OK进入下一步。(如果选择“extract to the target jar”,即把第三方jar文件,打入最终的可运行jar包时,可以不修改“Directory for META-INF/MAINFEST.MF”的配置,用缺省值即可)
5. 右键“&output root&”,选择“Create Directory”,输入目录名:lib
6. 用鼠标按住第三方jar,拖入&output root&下的lib目录下
7. 用鼠标选中我们将要打出的jar包文件,点击下方“Class Path:”后面的按钮,在“Edit Classpath”窗口中,将每个第三方jar文件前加上相对路径:lib\,形成如:lib\xxx.jar的形式,这个目录“lib”,就是前面输入的那个“lib”,这里如果第三方jar很多的话,可以在“Edit Classpath”窗口中,用鼠标选中所有第三方jar,然后Ctrl+X,把内容cut & copy到UltraEdit里,用列格式一下子全部修改好,再paste到“Edit Classpath”窗口中。完成后如下所示:
8. 完成后,点击OK,Apply等按钮,回到IDEA的主菜单,选择“Build - Build Artifacts”下的“Build”或者“Rebuild”即可生成最终的可运行的jar,并把第三方jar放到和此jar并行的lib目录下,用winrar打开目标jar,可以看到META-INF/MAINFEST.MF文件被正确包含,内容也正确。
9. 在jar包的输出目录下,执行命令:java -jar xxx.jar,即可运行jar文件。
浏览 52880
浏览: 202029 次
来自: 深圳
如果你maven项目分了模块,比如分了一个 projec-da ...
yangcheng33 写道赞,有个地方要纠正下 &in ...
赞,有个地方要纠正下 &includes&
非常棒,因为从来没写过日志,要几小时上手,官网将的一塌糊涂。这 ...
(window.slotbydup=window.slotbydup || []).push({
id: '4773203',
container: s,
size: '200,200',
display: 'inlay-fix'java工程打成jar包在命令行执行运行缓慢问题解决
时间: 11:01:35
&&&& 阅读:3116
&&&& 评论:
&&&& 收藏:0
标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&一个普通的java工程,用cxf连接webserivice。在eclipse下运行正常,但用eclipse达成jar包,在命令行执行却异常缓慢。
通过一些尝试,发现是因为打包的方式不对。eclipse导出可运行jar包有三种方式,分别为:
1.Extract required libraries into generated JAR
2.Package required libraries into generated JAR
3.Copy required libraries into& a sub-folder next to the generated JAR
一开始选择了第二种,把需要的jar包全部打进了生成的JAR包中,这种情况下运行非常慢。之后尝试了第一种和第三种,运行正常了。
用解压软件查看生成的jar包,发现第一种是把引用的jar包中的类提取出来了。第三种,则是把引用的jar包放在了另一个文件夹中。这两种方式运行正常。
可能和java 的jar命令执行的方式有关,还有待考证。标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&原文:/moonc/p/4015147.html
教程昨日排行
&&国之画&&&& &&&&&&
&& &&&&&&&&&&&&&&
鲁ICP备号-4
打开技术之扣,分享程序人生!}

我要回帖

更多关于 java运行jar包命令 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信