jar包目录下MANIFEST.MF标准格式

时间:2022-09-19 13:59:22

jar包目录格式:

|-- com
| |-- test.class
|-- META-INF
| |-- MAINFEST.MF

一个正常的jar包下必有META-INF/MANIFEST.MF清单文件,该文件的标准格式为:

1. 常规属性

Mainfest-Version: JAR版本号
Created-By: 生产者
Signature-Version: 签名版本
Class-Path: 依赖项列表,若存在多个依赖项时则采用空格分隔。依赖项路径为以JAR包路径为参考系的相对路径

注意:如果有依赖jar包,这里Class-Path项必不可少。如果是使用maven打包的,很可能是pom.xml中缺少插件:(会报错:java.lang.NoClassDefFoundError)

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.4</version>
    <configuration>
        <archive>
            <manifest>
                <addClasspath>true</addClasspath>
                <classpathPrefix>lib/</classpathPrefix>
                <mainClass>com.*.Main</mainClass>
            </manifest>
        </archive>
    </configuration>
</plugin>