#1 你写了一个HelloWorld.java
内容
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello, China");
}
}
#2 你用javac HelloWorld.java 编译生成HelloWorld.class 文件
#3 你执行了>java HelloWorld 输出结果:
F:\xxx>java HelloWorld
Hello, China
#4 用jar打包:网上说需要个文件(文件名可以随意)定义Main-Class,定义个文件hello,内容为:Main-Class:HelloWorld,这个时候,你估计还知道要回车,空一空白行:
Main-Class:HelloWorld
执行jar命令:
jar -cvfm xx.jar hello HelloWorld.class
你得到如下的错误:
引用
F:\xxx>jar -cvfm xx.jar hello HelloWorld.class
java.io.IOException: invalid header field
at java.util.jar.Attributes.read(Attributes.java:410)
at java.util.jar.Manifest.read(Manifest.java:199)
at java.util.jar.Manifest.<init>(Manifest.java:69)
at sun.tools.jar.Main.run(Main.java:174)
at sun.tools.jar.Main.main(Main.java:1233)
原因:清单文件不对,根源是用了参数-cvfm,其中m: -m 包含指定清单文件中的清单信息
去掉m参数执行:
jar -cvf xx.jar hello HelloWorld.class
得到结果:
引用
F:\xxx>jar -cvf xx.jar hello HelloWorld.class
已添加清单
正在添加: hello(输入 = 23) (输出 = 25)(压缩了 -8%)
正在添加: HelloWorld.class(输入 = 426) (输出 = 290)(压缩了 31%)
#5 执行命令:java -jar xx.jar
结果:
引用
F:\xxx>java -jar xx.jar
xx.jar中没有主清单属性
好了,你去打开xx.jar,修改里面的MANIFEST.MF文件。
添加:Main-Class:HelloWorld到文件中,回车换行,保存。
再次执行:java -jar xx.jar
结果:
引用
F:\xxx>java -jar xx.jar
Error: Invalid or corrupt jarfile xx.jar
说jar无效。
找原因,再次看到有人提起:Main-Class:之后要空格,于是加上
Manifest-Version: 1.0
Created-By: 1.8.0 (Oracle Corporation)
Main-Class: HelloWorld
保存之后,执行
>java -jar xx.jar
结果:
F:\xxx>java -jar xx.jar
Hello, China
成功了
分享到:
相关推荐
有关jar命令大全,希望能够帮到您~O(∩_∩)O~
转载 博文链接:https://longyi-java.iteye.com/blog/245296
将java文件打包成 jar jar命令详解
如果指定了目录,那么 jar 命令打包的时候会自动把该目录中的所有文件和子目录打入包中。 使用 jar 命令可以将 class 文件打包到 JAR 文件中,如下所示: cmd→进入你存放 class 文件的路径下→执行 jar cvf XXX....
输入打包jar命令:jar -cvfe test.jar JFrameDemo3 . (点表示当前目录, JFrameDemo3为jar的入口程序<即存放main方法的类>) 3. 命令执行后会在temp目录下生成一个test.jar 文件双击此文件即可执行 注意:此时生成...
Java程序的参数传递及项目打包成JAR文件(以内部类为例)
把java文件打包成.jar_(jar命令详解)
ojdbc5_g.jar (3,081,328 字节)— 与 ojdbc5.jar 一样,除了类通过“javac -g”编译并包含跟踪代码。 ojdbc6.jar (2,111,220 字节)— 用于 JDK 1.6 的类。它包含 JDBC 驱动程序类,但不包含在 Oracle Object ...
JAR命令详解 当你编译好java程序后怎么手动打包呢,这里介绍了一些jar打包的命令
java打包成jar有多种方法,有jar命令,有eclipse有相关操作,有制作完成的jar文件就是可执行的,文件有详细操作步骤
二、使用 jar 命令打包 使用 jar 命令可以将 Java 程序打包成 jar 文件。下面是 jar 命令的基本用法: jar cvfm MyApp.jar mymanifest.mf -C classes . 这里的选项 c 代表创建新的归档文件,v 代表生成详细输出,...
JAR文件包及jar命令详解:java的打包文件的过程,方法,和用途的详细解释。
制作可执行的JAR文件包及jar命令详解,用于打包。
教你怎样把class文件打成jar包--用java命令打包
3、工程的WebRoot也可以打包成war,可以使用jar命令打包 ,切换到WebRoot目录后 “jar cvf sdps */ .”。 4、上传到SAE后,有一定的反应时间,大约1分钟左右,访问应用会报 404 或 503 错误,耐心等待多刷新几次即可...
java中生成exe文件 jar打包成可执行文件 内附使用文档
解包出来的代码在smali文件夹里,编译出的代码是类似汇编语言的。
对jre包里的rt.jar精简,第一步:解压工具.rar,第二步:把你打包的jar小项目放到同一文件夹里。第三步:cmd,运行命令javaw -Dfile.encoding=utf-8 -jar GreenJVMMake.jar -t da -i ./mytest.jar -o ./ 执行后可以...
通过maven的命令 mvn install:install-file -Dfile……比较繁琐,我把这个繁琐的工作做了一次封装,批量操作,方便自己也分享给各位! (1)运行环境,需要用tomcat8.0及以上版本(其他容器JBoss、WebLogic期待您...
重新打包(重命名)的工具,在jar包重复的情况下使用。 这里我们以 gson.jar 为例,在 gson.jar 包目录下新建一个文本文件,名字随意,例如 rule.txt,写入下面的内容。 rule com.google.gson.** ...