0
夥計們我需要找到一些方法來包含或排除依賴關係,同時在maven(maven-compiler-plugin)中編譯我的代碼,我不想在我的類路徑中包含所有依賴項,只有少數將會是被java類文件用來編譯。如何排除maven-compiler-plugin中的一些依賴項?
有沒有這樣做?
夥計們我需要找到一些方法來包含或排除依賴關係,同時在maven(maven-compiler-plugin)中編譯我的代碼,我不想在我的類路徑中包含所有依賴項,只有少數將會是被java類文件用來編譯。如何排除maven-compiler-plugin中的一些依賴項?
有沒有這樣做?
您需要設置提供的依賴項的範圍。這會讓maven認爲依賴關係在運行時可用。 例如
<dependency>
<groupId>group-a</groupId>
<artifactId>artifact-b</artifactId>
<version>1.0</version>
<scope>provided</scope>
</dependency>
這說明這裏要好得多 -
感謝您的回答,請參閱我的需求從我的評論有問題,我知道依賴範圍的基礎,我需要在我的Maven編譯器插件中指定一些依賴項。我希望你明白。 – Afgan
我不知道我理解的問題。你能給個例子嗎?爲什麼Maven的標準「排除」機制不適合您的要求? – sisyphus
您可以使用「範圍」元素。在這裏看到答案: http://stackoverflow.com/questions/6646959/difference-between-maven-scope-compile-and-provided-for-jar-packaging – chrisl08
感謝評論的傢伙,我的要求是這樣的:我有類A,它應該編譯兩次具有相同的依賴性,但它的不同版本(兩個不同的jar幾乎相同的實現,幾乎沒有變化)。因此我需要一次依賴兩次編譯我的A類。 – Afgan