MANIFEST.MF是jar文件的配置文件,在用eclipse或jar命令生成jar包,都会在jar文件里生成这个文件,默认的MANIFEST.MF对我们来说没有什么意义,需要手工的修改一下,简单的例子如下:
Manifest-Version: 1.0
Main-Class: com.XMLTools
Class-Path: lib/dom4j-1.6.1.jar
lib/jaxen-1.1-beta-7.jar
lib/log4j-1.2.14.jar
lib/sitemesh-2.2.1.jar
一定要注意回车和空格。在这里我们指定该jar文件的main函数以及引入的第三方jar包。
这里大家可以看到我们引入了log4j-1.2.14.jar,很显然我们需要一个log4j.properties,那么我们要如何加载这个文件呢?可以在main方法里添加这样一行:
PropertyConfigurator.configure(System.getProperty("user.dir") + "/conf/log4j.properties");
这样我们只要把log4j.properties放到conf目录下就行了。
这种方式很方便我们在jar包或配置文件较多的时候进行统一的管理。避免用fatjar造成程序的臃肿,不利于实施和部署。
不多说了直接上代码,里面还包含一个生成MANIFEST.MF文件方法
分享到:
- 2011-11-23 18:13
- 浏览 3613
- 评论(0)
- 论坛回复 / 浏览 (0 / 2852)
- 查看更多
相关推荐
Java 读写MANIFEST.MF文件中的属性,采用maven打包MANIFEST.MF配置项,通过io流读取配置项
android apk文件里MANIFEST.MF、CERT.SF、CERT.RSA三者的关系(csdn)————程序
NULL 博文链接:https://wv1124.iteye.com/blog/573020
hhclass汉化 用来修改MANIFEST.MF
MANIFEST.MF
MANIFEST.MF.mf
META-INF/MANIFEST.MF org.slf4j.ILoggerFactory.class org.slf4j.IMarkerFactory.class org.slf4j.Logger.class org.slf4j.LoggerFactory.class org.slf4j.MDC.class org.slf4j.Marker.class org.slf4j....
详解MANIFEST.MF文件
webservice CXF 报错:java.lang.NoClassDefFoundError: org/apache/neethi/builders/AssertionBuilder 需要用到此jar文件 通过apache官网可获得。 文件位置\apache-cxf-2.7.13\lib
当我们需要运行一个与其他jar文件有关联jar文件时,如果jar文件里面的MANIFEST.MF文件没有配置好,那在运行时就要报异常:Exception in thread "main" java.lang.NoClassDefFoundError。原因:未找到关联jar文件里面...
必须使用的jar包。为JRE5.0+的更好的版本所提供 Jar文件包含的类: META-INF/MANIFEST.MFMETA-INF/LICENSE.txtMETA-INF/NOTICE.txtorg.apache.commons.lang.ArrayUtils.class org.apache.commons.lang.BitField....
必须使用的jar包。为JRE5.0+的更好的版本所提供 Jar文件包含的类: META-INF/MANIFEST.MFMETA-INF/LICENSE.txtMETA-INF/NOTICE.txtorg.apache.commons.lang.ArrayUtils.class org.apache.commons.lang.BitField....
需要测试的springboot项目,过程中遇到了idea打jar包,应为MANIFEST.MF 文件夹和 MANIFEST.MF 文件不在项目根目录下,导致多次 在本地 java -jar 运行jar包失败,当然放到docker 里作为容器启动也是失败的,后来在 ...