簡體   English   中英

編譯單元不在 Java 項目的構建路徑上 - Maven

[英]The compilation unit is not on the build path of a Java project - Maven

在此處輸入圖片說明 今天我在我的 Eclipse 中導入了一個 Maven 項目。 當我嘗試使用自動建議時,當我添加一些代碼時,它提醒我“編譯單元不在 Java 項目的構建路徑上”。 我看到這個問題的解決方法很少,但都沒有解決。 應該怎么做呢?

  <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>

<parent>
    <groupId>com.core.extension</groupId>
    <artifactId>Softpro</artifactId>
    <version>1.0.0-SNAPSHOT</version>
</parent>

<artifactId>cu-softpro-connector</artifactId>
<name>jar :: cu-softpro-connector</name>
<packaging>jar</packaging>

<dependencies>
    <dependency>
        <groupId>com.core.extension</groupId>
        <artifactId>cu-softpro-client</artifactId>
    </dependency>
    <dependency>
        <groupId>com.core.framework</groupId>
        <artifactId>cu-svcframework-ejb</artifactId>
        <type>ejb</type>
    </dependency>
    <dependency>
        <groupId>com.core.framework</groupId>
        <artifactId>cu-shared</artifactId>
    </dependency>
    <dependency>
        <groupId>com.core.base</groupId>
        <artifactId>cu-common-entity</artifactId>
    </dependency>
    <dependency>
        <groupId>com.core.base</groupId>
        <artifactId>cu-services-base</artifactId>
        <exclusions>
            <exclusion>
                <groupId>com.core.framework</groupId>
                <artifactId>cu-subsystems</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>com.core.base</groupId>
        <artifactId>cu-platform-model</artifactId>
    </dependency>
    <dependency>
        <groupId>com.core.extension</groupId>
        <artifactId>cu-forms-connector</artifactId>
    </dependency>
    <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-api</artifactId>
    </dependency>
    <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
    </dependency>
    <dependency>
        <groupId>commons-lang</groupId>
        <artifactId>commons-lang</artifactId>
    </dependency>
    <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-core</artifactId>
    </dependency>
</dependencies>
</project>

我在導入時遇到了與 maven 項目相同的問題。

根本原因:

我通過按Ctrl+Shift+R搜索文件並在Parent -> Sub-module -> FileName.java上的路徑上打開文件。所以在按 Ctrl+Space 時它給出了錯誤編譯單元不在Java 項目的構建路徑 - Maven

解決方法:

我們需要確保我們在子模塊路徑上打開文件,並且構建路徑應該配置為安裝在項目中的正確 jdk。

希望這會有所幫助。

當您在 Eclipse 中打開一個多模塊 Maven 項目時,您通常會在project explorer看到

- parent-module
  - sub-module1
    - src
      - main
        - java
          - YourClass <-- the one with the framed J icon
  + sub-module2
- sub-module1
  - src
    - main
      - java
        - YourClass <-- the one with the solid J icon

帶框的 J 圖標在此處輸入圖片說明
實心 J 圖標在此處輸入圖片說明

http://help.eclipse.org/luna/index.jsp?topic=/org.eclipse.jdt.doc.user/reference/ref-icons.htm解釋了圖標。

要將 Maven 項目導入 Eclipse,請遵循本文檔導入 Maven 項目

暫無
暫無

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

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