当前位置:首页 » 编程语言 » javaclass打包

javaclass打包

发布时间: 2023-06-10 07:37:06

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

一. jar命令用法:
在cmd命令窗口下输入jar,回车,就会提示改命令的用法:

二.例子(这里介绍的都是生成双击可执行的jar包):
1.首先介绍如何在命令行下执行打包程序。
1.1.没有包结构的最简单的工程。
(1)在c:盘下新建文件“HelloWorld.java”:

1 public class HelloWorld
2 {
3 public static void main(String[] args){
4 System.out.println("Hello world!");
5 }
6 }

(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.demo;

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.demo;

public class Car
{
public static void main(String[] args){
Light.on();
}
}

(2)在c:\com\gosyl\demo\下新建文件“Light.java”:

package com.gosyl.demo;

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正常启动。

㈡ 如何使用将单个的class文件打成jar包

1、 把两个.class文件打成jar包(1)打开cmd
(2)进入到准备打包的目录,找到要打包的文件,这里分别是
ExampleService.class和Examples.class文件
(3)输入:jar cvf (新jar的名字) (.class文件,多个则中间用空格隔开)
如:jar cvf chart.jar ExampleService.class Examples.class
(4)OK,标红框的是打好后的文件
2、把多个文件和.class文件打成jar包
(1)新建一个manifest.txt文件,在里面写一句就可以了:Manifest-Version: 1.0
(2)然后把manifest.txt的后缀改成.mf即变成了manifest.mf
(3)进入cmd,进入准备打包的那个根目录,这里把要打包的文件夹与manifest.mf放在了一个cd目录下
(4)输入:jar cfm (新jar包的名字) manifest.mf (目录名称)
注:jar 是打包命令;cfm 是参数; Notepad.jar 是打完包后的文件名;
参数c表示要生成一个新的JAR文件;f表示要生成的JAR文件的名字;m表示文件清单文件的名字。
*.class 只能把 class 文件打包进去,改成 *.* 可以把当前目录中的文件和文件夹全部打包进去。
(5)这里输入根目录或直接输入要打包的目录都可以,打出来的包是相同的

㈢ 我在将java的.class文件打包成.jar文件后运行不了“Failed to load Main-Class”。怎么办

你是用什么方法打包的?利用第三方工具还是用命令行?

你需要给jar包指定程序入口,就是得告诉它你的main在哪个类里面,有很多打包工具比如在eclipse下我喜欢fatjar,直接search一下就可以自动找到main方法的类,点个按钮就出来jar了。你要是命令行打包,那你的MANIFEST.MF文件要指定Main-Class。

代码贴出来看看。

热点内容
vs引入文件夹 发布:2025-02-13 22:05:52 浏览:126
安卓手机如何调无限电量 发布:2025-02-13 22:05:50 浏览:112
phppost长度 发布:2025-02-13 22:05:45 浏览:625
烈火战神源码 发布:2025-02-13 22:04:51 浏览:618
源码猫交易 发布:2025-02-13 22:04:49 浏览:755
广告脚本镜头 发布:2025-02-13 22:04:48 浏览:985
安卓手机哪个app自拍更真实 发布:2025-02-13 22:00:19 浏览:193
安卓系统密码忘了怎么办 发布:2025-02-13 21:49:28 浏览:971
找回密码发送信息是什么意思 发布:2025-02-13 21:49:26 浏览:639
织梦通用源码 发布:2025-02-13 21:48:41 浏览:438