Ich versuche, eine JAR-Datei zu erstellen, die alle erforderlichen Klassen innerhalb des Jar extrahiert hat. Aber für wenige abhängige jar wie log4j, erstellt es einige Ordner innerhalb META-INF/maven/*
. Ich habe eine Einschränkung, dass der Server, auf dem ich die generierte JAR-Datei platziere, keine Internetverbindung hat. Also, wenn es Inhalt in diesem META-INF/maven/*
Ordner gibt, dann gibt es mir einen Fehler.META-INF/Maven-Ordner aus der generierten JAR-Datei ausschließen
Mein Maven Descriptor sieht wie folgt aus
<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>
Ich bin in der Lage, die erforderlichen Klassendateien in dem erzeugten Glas zu extrahieren, aber der Maven-Ordner noch immer unter META-INF
erzeugt. Ich muss den Ordner manuell löschen, damit alles funktioniert. Bitte beachten Sie, wie Sie das Entfernen des Maven-Ordners aus der generierten JAR-Datei automatisieren können.
Awesome Liebe du Kumpel :) –