2017-03-18 49 views
0

此問題與問題Maven Include Dependency in Shaded Jar Only非常相似。在陰影罐中包含工件,但不會對使用該工程的工件造成依賴關係

我的問題是,我想將slf4j-simple包含在陰影的jar中,因爲它是用於獨立執行的,並且需要正確的日誌記錄。

<dependencies> 
    <dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-api</artifactId> 
     <version>1.7.21</version> 
    </dependency> 

    <dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-simple</artifactId> 
     <version>1.7.21</version> 
    </dependency> 

</dependencies> 

我嘗試使用<scope>provided</scope>但隨後未能讓Maven遮陽簾插件包括它。

回答

0

我發現的解決方案是在依賴聲明中使用<optional>true</optional>。由於以前的範圍對我來說足夠了,所以我不知道這個選項。

<dependencies> 

    <dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-api</artifactId> 
     <version>1.7.21</version> 
    </dependency> 

    <dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-simple</artifactId> 
     <version>1.7.21</version> 
     <optional>true</optional> 
    </dependency> 

</dependencies> 
相關問題