簡體   English   中英

Maven / M2Eclipse一直排除我的資源

[英]Maven / M2Eclipse excludes my resources all the time

我有兩個非常煩人的Maven-Eclipse集成問題,它不時地從構建路徑中排除src / main / resources和src / test / resources中的所有資源。

如果我檢查“屬性>> Java構建路徑”源“我可以看到這兩個文件夾有”排除:**“。

通過單擊排除項中的“刪除”可以輕松解決問題,但這確實非常令人沮喪。

項目設置非常簡單,它有一些模塊和子模塊,但沒什么特別的。 我的pom.xmls中沒有關於資源,eclipse或其他任何配置選項(也許我應該這樣做)。

另一個問題是Eclipse不斷在“目標”目錄中報告警告(在“問題”視圖中),它首先不應該給出一個該死的。

Ps:Springsource Tool Suite 2.7.0.RELEASE,Eclipse的Maven Integration 0.12.1.20110112,Maven 2.2.1

這是正確的行為。 當前版本的M2E為Eclipse IDE中的自動構建過程提供了自己的貢獻。 此構建過程考慮了生成資源和流程資源等的maven生命周期...即,某些項目具有從配置生成資源並放入已編譯的輸出文件夾中的插件。

您在構建路徑中查看的機制僅與構建在機制中的Eclipse IDE相關,該機制用於將一組輸入源文件夾編譯/組裝到輸出文件夾中。 如果Maven和Eclipse都這樣做會有沖突/問題。

M2E FAQ中有一個關於這個確切點的鏈接https://www.eclipse.org/m2e/documentation/m2e-faq.html#how-to-configure-proxy-and-location-of-maven-local-知識庫

如果您真的遇到資源未被復制的問題,我們可以解決為什么會這樣(因為這是另一回事),但您的主要問題是關於常見的M2E FAQ點。

也許你想升級到org.eclipse.m2e和Indigo,因為很多Maven復雜的maven問題/用法我大多已經解決或者有解釋的解決方案。

我建議你執行一個“Run As - > Maven - > clean”然后執行“Project - > Clean”然后啟用自動bulding(這是為了允許基於Eclipse的自動構建,不要使用Run As - > Maven建立測試這一點)。 現在在eclipse外面打開一個文件管理器,並手動檢查輸出文件夾中是否有你認為沒有被復制的資源。 你會發現它們在那里是一樣的。

我同意關於目標/ **目錄中項目的(可能驗證)警告,雖然Eclipse有辦法從驗證中手動排除目標/ **目錄,但這個選項不會超出項目清理范圍(當目標目錄是刪除)。

因此總是等待大型項目中的項目驗證有點煩人。

也許我試圖看看是否可以創建Maven Eclipse連接器插件來實現這一點,即綁定到構建生命周期並自動在目標文件夾上應用Exclude Validation。

T_T不是一個好的解決方案。 沒有maven-update就不會復制資源


maven資源:生命周期映射中被忽略的資源階段將導致此問題。

正如邁爾斯上面指出的那樣,eclipse不會復制資源,因為它假定maven會為你做這件事。 然后,如果資源:不執行maven中的作業的資源階段,則在運行時獲得文件未找到異常。

檢查這個開放

project-> properties-> maven-> lifecycle mapping

並查看資源:資源是否被標記為被忽略。

解決它windows-> preference-> maven-> lifecycle mapping-> open workspace lifecycle mappings metadata

然后改變

  <action>
    <ignore />
  </action>

  <action>
    <execute />
  </action>

目標resources

重新加載元數據並更新maven項目

應該解決問題。

步驟1.從eclipse步驟2中刪除項目。新導入項目步驟3.轉到需要添加為源文件夾的文件夾。

請參考下面的屏幕截圖: 在此輸入圖像描述

暫無
暫無

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

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