使用java -jar运行jar包

使用java -jar运行jar包

摘要 其实不难,网上搜了不少,但是讲不全,或者讲得不少,有的细节却漏掉了, 在此,我想将详细点

java -jar

1.其实命令比较简单:进入相应的目录后,执行java -jar XXX.jar即可!

2.但是,为什么通过Maven打包或者Eclipse export出来的jar不能运行呢?原因很简单,没指定执行哪个类的main方法,如何指定?配置文件,项目文件夹下有一个META-INF文件夹,META-INF文件夹下有一个MANIFEST.MF文件,只要更改该文件就可以了

3.默认该文件内容是:

Manifest-Version: 1.0
Created-By: 1.4.2(Sun Microsystems Inc.)

将其改成

Manifest-Version: 1.0
Created-By: 1.4.2(Sun Microsystems Inc.)
Main-Class: XXX.XXX.XXX.XXX

注意:

Main-Class后面X部分是包名.类名

Main-Class:后面有个空格,下面还有空的一行

4.改好内容后,怎么将其打成jar包呢?

我试过,直接用winrar打包,然后改后缀名,不行,

以下这种方法可行:

假设你的jar包名为myJar.jar:

(1)先将myJar.jar解压至myJar(在同一层文件夹)

(2)进入myJar文件夹,再进入META-INF文件夹,更改MANIFEST.MF文件,

按照步骤三的操作即可

(3)保存后退到myJar.jar同一层目录,然后执行jar umf myJar/META-INF/MANIFEST.MF myJar.jar

如果没报错,并生成了XXX.tmp文件,就说明执行成功,

打开myJar.jar就可以看到MANIFEST.MF文件已经被改成了相应的需要的文件了

(4)在当前目录执行java -jar myJar.jar即可

时间: 2024-07-28 19:04:03

使用java -jar运行jar包的相关文章

[Java] 可运行 jar 记录

在 Eclipse 上,通过 Export 选择 Java 下的 Runnable JAR file ,可以将项目导出一个可执行的 jar 包. 例子如下 1. Eclipse 项目只有一个文件 main/App.java package main; public class App { public static void main(String[] args) { System.out.println(" - - "); } } 2. 对着项目右击,Export -> Run

[读后感]Java 控制台运行 Jar 传参的编码问题

下面这版面,太让我纠结了,谁能帮调整一下,... _________________ java -jar test.jar "一二一" 这样传进去的 "一二一" 如果打印出来,会是乱码,可以加个 -Dfile.encoding=UTF-8 来指定参数作为什么字符编码传入. java -Dfile.encoding=UTF-8 -jar test.jar "一二一" 这样,在 java 代码内打印出来的就不是乱码了. 另外: String 表示一个

将Java程序打jar包并运行

1)接着上篇博客继续说手动编译之后,将代码打成jar包,然后直接“java -jar lz.jar"运行不成功的问题.还是先上代码: 这个是Demo类: package org.lz.demo.a ; public class Demo{ public String getContent(){ return "oh,yeah,done!" ; } }; 接下来,这个是调用了Demo类的ImportDemo类,并且这两个类不在一个包中: package org.lz.demo.

【java】 linux下利用nohup后台运行jar文件包程序

Linux 运行jar包命令如下: 方式一: java -jar XXX.jar 特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出 那如何让窗口不锁定? 方式二 java -jar XXX.jar & &代表在后台运行. 特定:当前ssh窗口不被锁定,但是当窗口关闭时,程序中止运行. 继续改进,如何让窗口关闭时,程序仍然运行? 方式三 nohup java -jar XXX.jar & nohup 意思是不挂断运行命令,当账户退出或终端关闭时,

java工程打成jar包在命令行执行运行缓慢问题解决

一个普通的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

java工程导成jar包,用批处理运行jar包

新建一个java工程(在本例中的工程名叫JavaProject),在main()里面写入自己要执行的方法. 接下来把工程导成jar包,操作步骤如下: 右键工程名,选择Export,选择java里面的Runnable JAR file(如下图) 点击Next后,在弹出框中选择自己的工程名(类名-工程名),选择jar包上传的位置(如下图:) 点击Finish按钮就可以生成了,双击生成的jar包就可以运行了. 接下来怎么用.bat文件运行jar包呢: 新建一个run.bat文件(文件名随便命名),用记

Windows/Linux下引用jar包,并用javac/java编译运行

Windows/Linux下引用jar包,并用javac/java编译运行,有需要的朋友可以参考下. 1> Windows 假设要引用的jar放在D:/test目录下,名字为t1.jar, java源文件放在D:/test/src目录下,名字为t2.java. 编译: javac -cp d:/test/t1.jar d:/test/src/t2.java 运行: java -cp d:/test/t1.jar;d:/test/src t2 注意,分号后面没有空格,否则报错. 需要注意的是,如果

【深入JAVA】打包项目为Jar包并运行jar

在阅读的过程中有任何问题,欢迎一起交流 邮箱:[email protected]    QQ:1494713801 1.其实运行jar包的命令比较简单:进入相应的目录后,执行java -jar XXX.jar即可! 2.但是,为什么通过Maven打包或者Eclipse export出来的jar不能运行呢?原因很简单,没指定执行哪个类的main方法,如何指定?配置文件,项目文件夹下有一个META-INF文件夹,META-INF文件夹下有一个MANIFEST.MF文件,只要更改该文件就可以了 3.默

java项目导出为可运行jar包

1.选中要导出的项目, 右键->export,选中java下的JAR file->next,选择要导出的路径->next,finish. 2.选中导出的jar文件用压缩文件管理器打开 3.有个META-INF目录,把里面的MANIFEST.MF文件拖出来.此时MANIFEST文件内容应该只有下面这一行: <span style="font-size:24px;"> Manifest-Version:1.0</span> 4.修改MANIFEST