TA的每日心情 | 开心 2021-3-12 23:18 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
一、jar文件中加入第三方的jar包
大家都知道打java包,需要一个清单文件,MANIFEST.MF,内容无非就是
Manifest
-
Version:
1.0
Main
-
Class: awt.MyGuiImp
实际上,清单文件中还有一个重要的,就是Class-Path,大家一看就知道这个是用来干什么的了,不错,这个就是程序运行的支持库的路径。后来上网查了一下,MANIFEST.MF的具体解释是这样:
打包清单,它是打包的关键性文件,主要是设置执行入口类和支持库的路径,在运行java应用程序时要根据此文件中给出的信息来查找入口类和支持库.
我们以前只注意了MANIFEST.MF中的入口类,也就是我们常说的主类(有main方法的类),却忽视了支持库。
Class-Path:指定支持库的路径,"."指程序运行目录,当前目录。程序运行时依据Class-Path
项的设置路径来查找支持库.每一个支持库之间用空格格开。
自己用到的jar,放入一个文件夹lib,lib就放在和jar包一个文件夹下,清单文件这样写:
Manifest
-
Version:
1.0
Main
-
Class: awt.MyGuiImp
Class
-
Path: .
/
lib
/
jacob.jar .
/
lib
/
jdom.jar .
/
lib
/
log4j.jar
移到别的计算机,运行jar,就不会出现任何问题了,前提是该计算机必须装jdk.
二、真正最正确的用BAT运行JAVA程序,不显示DOS窗口(连闪一下都不闪)
作者: 交口称赞。http://www.blogjava.net/vip01/ 很多朋友在WINDOWS下会用批处理去启动自己的java程序,
一般的写法是
运行class:
java xx- 运行jar:
- java -jar xxx.jar
- 但是这样运行会有一个恶心的对话框停在那直到我们关闭程序。
- 于是很多人说可以这样
- 运行class:
- start javaw xx
- 运行jar:
- start javaw -jar xxx.jar
- 这种方法DOS窗口还是会一闪而过,这就算解决问题了吗?!网上很多人说是的.
- 对我们这种追求完美的人来说闪一下还是不能接受滴.
-
- 于是终极解决方案出现了!
- 那就是在批处理第一行加上@echo off
- 这样我们的批处理就变成了
- 运行class:
- @echo off
- start javaw xx
- 运行jar:
- @echo off
- start javaw -jar xxx.jar
- 快试试吧,绝对不闪了。哈哈哈。
- 解释一下
- echo off
- 表示在此语句后所有运行的命令都不显示命令行本身
- @ 表示运行时不显示本命令行
-
- 想当年玩D版游戏的时候,虚拟光驱还是命令行方式的,为了让一个游戏正常运行,
- 往往要写很长的批处理,那时候俺这种完美主义者就认识到了@echo off的重要性了。
- 呵呵,这件事情证明了妈妈说学好DOS很重要是多么的英明伟大。
- 最后怀念一下藏经阁、大草原、老兵。
- N年没买过碟子的人含泪飘过。。。。。。。。。。。。。
-
复制代码
|
|