MANIFEST.MF文件
有时候我们需要在命令行下运行Jar包, 而一个Jar包通常会依赖其他的jar包,这样每次命令行运行时都需要将依赖的jar包classpath, 还有指定main方法的类全限定名称, 特别费尽,最近发现可以用MANIFEST.MF文件解决上面的问题
在MANIFEST.MF文件中指定Main-Class和Class-Path就可以在运行命令时不需要指定依赖的Jar包,和main方法的全限定类名
运行时之需要:
java -jar xxxxx.jar param1 param2
xxxxx.jar代表你要运行的jar包,param1, param2代表需要传入的参数,如果不需要参数,就不用写
如果是用maven创建的项目,可以在pom.xml中添加如下的maven插件配置:
<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-jar-plugin</artifactId><version>3.1.0</version><configuration><archive><manifest><useUniqueVersions>0.0.1</useUniqueVersions><mainClass>com.isoftstone.hag.Hag</mainClass><addClasspath>true</addClasspath><addDefaultImplementationEntries>true</addDefaultImplementationEntries><addDefaultSpecificationEntries>true</addDefaultSpecificationEntries><addExtensions>true</addExtensions><classpathPrefix>lib/</classpathPrefix></manifest><addMavenDescriptor>true</addMavenDescriptor></archive><!--方式二 <archive><manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile></archive> --></configuration>
</plugin>
主要设置<mainClass>、<addClasspath>、<classpathPrefix>,其他的根据需要可以自行设置,<classpathPrefix>作用是设置依赖jar包所存放的位置, 也可以使用方式二在src/main/resources/META-INF/下建立MANIFEST.MF文件,打包时maven会用这个文件。
关于MANIFEST.MF的格式编写规范可以自己百度一下,这里也提供一个别人写好的关于MANIFEST.MF的介绍:
MANIFEST.MF的介绍:https://www.cnblogs.com/EasonJim/p/6485677.html
MANIFEST.MF文件相关推荐
- MANIFEST.MF文件的格式
MANIFEST.MF文件的格式 1. 基本格式 属性名称+:+空格+属性值 2. 没行最多72个字符,换行继续必须以空格开头 3. 文件最后必须要有一个回车换行 4. Class-Path 当前路径 ...
- MANIFEST.MF文件全面解析
(一)简介 当我们用Jar命令打完包后,会在根目录下面创建META-INF目录,该目录下面会有一些对该Jar包信息的描述,其中肯定会有一个MANIFEST.MF文件,该文件包含了该Jar包的版本.创建 ...
- Java 打 jar 包时,MANIFEST.MF 文件详解
具体详情,详见<MANIFEST.MF文件详解> manifest.mf 的编写规则 不能有空行和空格的地方 第一行不可以是空行(第一行的行前不可以有空行),行与行之间不能有空行,每行的行 ...
- Springboot读取jar包中的MANIFEST.MF文件内容
Springboot打包成可执行jar包后,包结构如下所示: 工程编译后的文件都在BOOT-INF/classes目录下,如果需要读取并显示META-INF/MANIFEST.MF文件内容,那么可以用 ...
- JAR包中的MANIFEST.MF文件详解以及编写规范
JAR包中的MANIFEST.MF文件详解以及编写规范 参考百度百科的解释如下: http://baike.baidu.com/item/MANIFEST.MF MANIFEST.MF:这个 mani ...
- meta-inf文件夹以及MANIFEST.MF文件的作用
meta-inf相当于一个信息包,目录中的文件和目录获得Java 2平台的认可与解释,用来配置应用程序.扩展程序.类加载器和服务 manifest.mf文件,在用jar打包时自动生成的. META-I ...
- MANIFEST.MF文件详解
文章目录 一. 一般属性 二. 应用程序相关属性 三. 小程序(Applet)相关属性 四. 扩展标识属性 五. 包扩展属性 六. 签名相关属性 七.自定义属性 JAR 文件是什么? META-INF ...
- manifest java_JAR包中的MANIFEST.MF文件详解以及编写规范
参考百度百科的解释如下: MANIFEST.MF:这个 manifest 文件定义了与扩展和包相关的数据.单词"manifest"的意思是"显示" 打开Java ...
- Idea打包jar,MANIFEST.MF文件没有Main-Class属性 xxx.jar中没有主清单属性
Idea打包jar 下图中圈出来的路径不能是默认的,需要放在项目根路径下,修改为:D:\IntelliJIdea\project\MyFtpServer\META-INF\MANIFEST.MF. 修 ...
最新文章
- mdk编译后的HTML,[转载]keil MDK编译完成后,Program Size:
- Centos7设置IP为固定值
- Redis学习笔记(八)——持久化
- 云级Key-value数据库大比较
- CentOS 7从Python 2.7升级至Python3.6.1
- An internal error occurred while showing an internal error.
- 三维重建18: 图像深度获取
- Java数组排序解码
- python函数 global_Python global全局变量函数详解
- RTX5 | 配置文件RTX_Config.h(一)
- 动物和计算机-自组织是悬空的钢丝
- 【英语学习】【Daily English】U15 Culture L01 You'll be used to life here before long
- 【Elasticsearch】如何管理 Elasticsearch 文档中的嵌套对象
- 动态规划 BZOJ2287【POJ Challenge】消失之物
- 窗口启动特效,使用win32 api
- Quartz数据库存储
- 如何获取EasyCVR平台设备通道的RTMP视频流地址?
- C++实现九宫格输入法T9密码解密
- 世界期货市场竞争格局的变迁
- 关于window简体中文环境文件路径包含7种横杠的问题,及结论推广