MANIFEST.MF文件详解

  1. 依赖包是否在classpath中;

  2. 资源文件目录是否在classpath中;

  3. 主类是否正确;

具体配置参考 maven-jar-plugin 配置

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>${maven-jar-plugin-version}</version>
                <configuration>
                    <archive>
                        <!-- 生成的jar中,不要包含pom.xml和pom.properties这两个文件 -->
                        <addMavenDescriptor>true</addMavenDescriptor>
                        <manifest>
                            <!-- 是否要把第三方jar放到manifest的classpath中 -->
                            <addClasspath>true</addClasspath>
                            <!-- 生成的manifest中classpath的前缀,填写依赖jar包相对于项目jar包的路径-->
                            
                            <classpathPrefix>./</classpathPrefix>
                            <!-- 应用的main class -->
                            <mainClass>com.skd.client.ClientApplication</mainClass>
                        </manifest>
                        <!--将资源文件目录添加到classpath中,打包后运行项目时则会在该目录下加载配置文件-->
                        <manifestEntries>
                            <!--填写配置文件相对于项目jar包的路径-->

                            <Class-Path>../conf/</Class-Path>
                        </manifestEntries>
                    </archive>
                </configuration>
            </plugin>
原文地址:https://www.cnblogs.com/virgosnail/p/10154783.html