簡體   English   中英

如果添加了名稱模板,為什么 Eclipse 無法識別多模塊 Maven 項目的 Java 性質?

[英]Why does eclipse not recognize Java nature of a multimodule maven project if name template is added to it?

我有一個組織為多個模塊的 springboot 項目。 我正在使用 Eclipse 2019-06(版本 4.12)和 jdk 1.8 update 131 和 apache maven 3.3.9 版本。

使用Maven導入項目時-> Existing maven projects -> select all project and module level poms->click on finish button ,它成功導入。

我可以將子模塊視為單獨的項目,可以通過右鍵單擊它們到項目工作區來單獨運行。 使用右鍵單擊 -> 運行方式 -> JUnit 測試成功運行JUnit 測試。

但是,如果我在導入項目時包含一個名稱模板,即使我在導入時也選擇了所有子 poms,子模塊也無法識別。

Java 文件顯示空 J,這表明它不識別 Java 性質。 因此,我無法運行JUnit測試並且ctrl+click導航到方法或類也不起作用。

在這兩種情況下, .project 的內容保持不變:

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
    <name>my-springboot-app</name>
    <comment></comment>
    <projects>
    </projects>
    <buildSpec>
        <buildCommand>
            <name>org.eclipse.m2e.core.maven2Builder</name>
            <arguments>
            </arguments>
        </buildCommand>
    </buildSpec>
    <natures>
        <nature>org.eclipse.m2e.core.maven2Nature</nature>
    </natures>
</projectDescription>

我按照其他 stackoverflow 線程中的建議嘗試了以下步驟:

  1. 手動編輯上面的 xml 以添加 Java 自然標記以及 Maven。 這並沒有幫助,因為它開始將相應的子項目顯示為包而不是項目/包資源管理器中的模塊。
  2. 將項目轉換為多面項目。 這開始出現更多錯誤,因為項目的 Java 性質仍未被 maven 識別。
  3. 從代碼位置使用 mvn eclipse:clean 或 remove.project 文件,然后使用 mvn eclipse:eclipse 這只是重新創建了 .project 文件,並沒有幫助成功導入子項目。

請注意,當我不導入項目時,eclipse 會在導入項目時構建項目,為其指定名稱模板,否則不會。

如果有人能讓我知道這是否是m2e 插件本身的問題,以及我是否應該使用其他插件,那就太好了。

Eclipse 4.12預裝了m2e 我想過使用名稱模板而不是切換工作區,這可能需要時間,以便可以在同一個Eclipse 工作區中看到 2-3 種風格的代碼。

問題在於自定義名稱被用作名稱模板。 當我使用任何可用選項(如 [groupid].[artifactid]-version 或僅使用 [artifactid]-version)時,m2e 成功導入項目。 我在較早的項目中看到了一些關於導入類解析的錯誤,但是當我關閉工作區中不相關的項目時它們就消失了。

暫無
暫無

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

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