2011-12-15 61 views
5

我使用Eclipse靛藍與M2E插件(1.0.1版本)引用。我有兩個獨立的工作區項目:一個Maven項目,基本上是一個Vaadin部件和第二Maven項目是其中引用該插件與我的主要項目:本地Maven依賴項目爲一類文件夾而不是一個罐子

<dependency> 
    <groupId>com.mycompany.widget</groupId> 
    <artifactId>Calendar</artifactId> 
    <version>1.2</version> 
    <type>jar</type> 
</dependency> 

如果我運行mvn乾淨的Widget項目安裝它被正確打包爲一個jar文件,也可以在我的本地Maven倉庫中使用。我也可以在我的主項目中使用小部件的類。然而,在我的主要項目的Maven依賴,該Widget項目顯示爲一類文件夾而不是一個罐子(儘管所有其它外部部件依賴性顯示爲jar文件)。

這會導致一些問題,當我試圖解開(甚至複製)的依賴,以我的主要項目有依賴性:解包依賴性(RESP依賴:複製依賴)。 Maven構建失敗:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:2.4:unpack-dependencies (default-cli) on project [main project]: Error unpacking file: /.../Calendar/target/classes to: /.../[main-project]/target/classes 
[ERROR] org.codehaus.plexus.archiver.ArchiverException: The source must not be a directory. 

我的問題是:我如何引用我的widget項目作爲一個jar,而不是在我的主要項目中的類文件夾?

回答

6

他們是在不同的目錄,對不對?試試這個: 右鍵單擊你的項目,選擇Maven - > Disable Workspace Resolution。

而且檢查項目屬性,並確保該項目未在Java構建路徑引用 - >項目。

+0

謝謝,我不得不關閉工作空間分辨率。當我在運行配置下取消選中「解決工作區工件」時,maven-dependency-plugin錯誤就消失了。 – user1099501 2011-12-16 10:06:38

相關問題