簡體   English   中英

Maven沒有將所有依賴項添加到jar中

[英]Maven not adding all dependencies to jar

我在IntelliJ中構建了一個簡單的程序,並使用了使用io.netty依賴項的maven。 我已經添加到我的POM文件中:

    <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-all</artifactId>
        <version>4.1.0.Beta1</version>
    </dependency>

為了編譯並獲取一個jar文件,我通常這樣做:

  • 清潔
  • 編譯

但是我注意到,依賴關系沒有添加到jar中,也沒有像通常那樣存在於目標文件夾(或其任何子文件夾中)或添加到資源文件夾中。

為了將io.netty庫添加到jar中,我嘗試了:

  • 將范圍設置為提供和編譯。
  • 重新導入pom文件。
  • 刪除.m2 / repository /文件夾中的io.netty文件夾。

我還有其他幾個鏈接的庫,包括:

  • MySQL的連接器的Java
  • slf4j-簡單
  • trove4j

謝謝閱讀。

出於某種奇怪的原因,我前一陣子更改了Maven配置。 雖然我沒有添加任何新庫,但是舊庫仍將其類放置在該罐中。

我通過將pom中的版本更改為以下方式解決了此問題:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-assembly-plugin</artifactId>
            <version>2.4</version>
            <configuration>
                <descriptorRefs>
                    <descriptorRef>jar-with-dependencies</descriptorRef>
                </descriptorRefs>
                <archive>
                    <manifest>
                        <mainClass>com.domain.Program</mainClass>
                    </manifest>
                </archive>
            </configuration>
            <executions>
                <execution>
                    <id>make-assembly</id>
                    <phase>package</phase>
                    <goals>
                        <goal>single</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

用作參考: http : //mkyong.com/maven/create-a-fat-jar-file-maven-assembly-plugin/

默認情況下,Maven不會將所有依賴項打包到一個jar中。 您可以使用組裝插件來構建帶有依賴項的jar,如下所示: 如何使用Maven創建具有依賴項的可執行JAR?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM