7

重複の可能性:
Maven を使用して jar に依存関係を含める

私は Maven の初心者で、Maven を使用して依存関係の jar を含む jar を作成したいと考えています。しかし、私はそうすることができませんでした。それについて私を助けてください。

4

3 に答える 3

3

アプリケーションと必要なライブラリを含む 1 つの jar を作成しようとしている場合、(私が知っている) 2 つの方法があります。1 つ目はOne-Jarで、特別なクラスローダーを使用して jar のネストを可能にします。2 つ目はUberJar (またはShade ) で、含まれているライブラリを展開し、すべてのクラスを最上位の jar に配置します。

また、UberJar と Shade はそれぞれ Maven1 と Maven2 のプラグインであることにも言及する必要があります。以下で説明するように、アセンブリ プラグインを使用することもできます (実際にはアセンブリ プラグインの方がはるかに強力ですが、適切に構成するのははるかに困難です)。

于 2012-06-18T10:10:27.327 に答える
0

shadeプラグインを使用:

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
    <version>1.7</version>
<executions>
    <execution>
    <phase>package</phase>
    <goals>
        <goal>shade</goal>
    </goals>
    </execution>
</executions>
</plugin>
于 2012-06-18T10:14:01.740 に答える
-1

ファイルに以下を含めpom.xmlます。

<build>
<plugins>
    <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <configuration>
            <archive>
                <manifest>
                    <mainClass>MainClass with the packages</mainClass>
                </manifest>
            </archive>
            <descriptorRefs>
                <descriptorRef>jar-with-dependencies</descriptorRef>
            </descriptorRefs>
        </configuration>
    </plugin>
</plugins>

于 2012-06-18T10:10:49.213 に答える