Ich versuche, eine deploy-fähige jar, die Apache commons-lang3 verwenden. Mein AWS-Cluster, in dem sich mein Hadoop befindet, enthält diese Bibliothek jedoch nicht, daher erhalte ich eine classNotFoundException. Ich dachte, ich brauchte, um manuell diese Abhängigkeit in hinzufügen, aber ich habe Probleme mit der Maven-Schatten-Plugin funktioniert (ich wurde empfohlen, diese zu verwenden) Meine aktuelle pom-Datei wie folgt aussieht:Include-Abhängigkeit in maven Schatten-Plugin
<dependency>
<groupId>org.apache.pig</groupId>
<artifactId>pig</artifactId>
<version>0.12.0-cdh5.2.6</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.4</version>
</dependency>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<artifact>org.apache.commons:commons-lang3</artifact>
<includes>
<include>org/apache/commons/commons-lang3/3.4/*</include>
</includes>
<minimizeJar>true</minimizeJar>
</configuration>
</execution>
</executions>
</plugin>
Ich möchte ein ganz normales Glas mit dem Zusatz der Commons-lang3-Bibliothek, die darin eingebettet ist. Gibt es etwas, was ich falsch mache?
Nach https://maven.apache.org/plugins/maven-shade-plugin/shade-mojo.html - möchten Sie Verwenden Sie, nicht in Ihrem ... Artefakt wird nicht unterstützt. –