Maven Shadow 不使用清单创建 fat jar

ali*_*der 2 java maven

我正在使用 Maven 3.6.1 和 Maven Shade 插件 2.3。我复制了下面pom文件的shade插件部分。创建 jar 时会创建清单,但它不引用主类。我正在使用mvn package命令创建 jar 。关于如何解决这个问题有什么想法吗?

        <plugin>
            <artifactId>maven-shade-plugin</artifactId>
            <version>2.3</version>
            <configuration>
                <createDependencyReducedPom>true</createDependencyReducedPom>
                <transformers>
                    <transformer
                            implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
                    <transformer
                            implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                        <mainClass>com.abc.someclass</mainClass>
                    </transformer>
                </transformers>
                <!-- exclude signed Manifests -->
                <filters>
                    <filter>
                        <artifact>*:*</artifact>
                        <excludes>
                            <exclude>META-INF/*.SF</exclude>
                            <exclude>META-INF/*.DSA</exclude>
                            <exclude>META-INF/*.RSA</exclude>
                        </excludes>
                    </filter>
                </filters>
            </configuration>
            <executions>
                <execution>
                    <phase>package</phase>
                    <goals>
                        <goal>shade</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
Run Code Online (Sandbox Code Playgroud)

ali*_*der 5

我必须按如下方式运行包命令(即以阴影作为目标):

mvn clean package shade:shade
Run Code Online (Sandbox Code Playgroud)

从pluginManagement中删除插件允许我使用以下命令创建阴影jar:

mvn clean package
Run Code Online (Sandbox Code Playgroud)