相关疑难解决方法(0)

从生成的jar文件中排除META-INF/maven文件夹

我正在尝试创建一个jar文件,其中包含jar中提取的所有必需类.但对于像log4j这样的依赖jar很少,它会在里面创建一些文件夹META-INF/maven/*.我有一个限制,我将放置生成的jar文件的服务器将不具有Internet连接.因此,如果此META-INF/maven/*文件夹中有任何内容,那么它会给我一个错误.

我的maven描述符如下所示

<build>
    <sourceDirectory>src</sourceDirectory>
    <plugins>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.3</version>
            <configuration>
                <source>1.6</source>
                <target>1.6</target>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <configuration>
                <archive>
                    <addMavenDescriptor>false</addMavenDescriptor>
                </archive>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-shade-plugin</artifactId>
            <executions>
                <execution>
                    <phase>package</phase>
                    <goals>
                        <goal>shade</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <minimizeJar>true</minimizeJar>
                <finalName>myclient</finalName>
            </configuration>
        </plugin>
    </plugins>
</build>
Run Code Online (Sandbox Code Playgroud)

我能够在生成的jar中提取所需的类文件,但maven文件夹仍在生成META-INF.我必须手动删除文件夹才能使一切正常.请提供有关如何从生成的jar文件中自动删除maven文件夹的建议.

java maven maven-shade-plugin

8
推荐指数
2
解决办法
1万
查看次数

标签 统计

java ×1

maven ×1

maven-shade-plugin ×1