此编译单元不在Java项目的构建路径上

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了此编译单元不在Java项目的构建路径上相关的知识,希望对你有一定的参考价值。

当我尝试使用ctrl+space时,会显示以下错误:

This compilation unit is not on the build path of a Java project.

我看到有类似的主题,但我的工作环境是Eclipse,我从Git(我导入项目作为一般项目)拉我的项目,我使用Apache Ant。谁能帮我?

答案

由于您将项目作为常规项目导入,因此它没有java特性,这就是问题所在。

在工作区的.project文件中添加以下行并刷新。

<natures>
      <nature>org.eclipse.jdt.core.javanature</nature>
</natures>
另一答案

转到项目 - >右键单击 - >选择属性 - >项目构面 - >修改您正在使用的JDK版本的Java版本。

另一答案

如果它是Maven项目,那么有时重新导入它有助于:

  1. 在Project Explorer中右键单击该项目,然后选择“删除”。
  2. 文件>导入...> Maven>现有Maven项目>下一步>根目录>从磁盘浏览项目。

希望它能解决这个问题。

另一答案

Loganathan Mohanraj解决方案的另一种替代方案(有效地执行相同操作,但是来自GUI):

  1. 右键单击您的项目
  2. 转到“属性”
  3. 选择“项目自然”
  4. 点击“添加”
  5. 选择“Java”
  6. 点击“应用并关闭”
另一答案

将其添加到.project文件中

 <?xml version="1.0" encoding="UTF-8"?>
        <projectDescription>
            <name>framework</name>
            <comment></comment>
            <projects>
            </projects>
            <buildSpec>
                <buildCommand>
                    <name>org.eclipse.wst.common.project.facet.core.builder</name>
                    <arguments>
                    </arguments>
                </buildCommand>
                <buildCommand>
                    <name>org.eclipse.jdt.core.javabuilder</name>
                    <arguments>
                    </arguments>
                </buildCommand>
                <buildCommand>
                    <name>org.eclipse.m2e.core.maven2Builder</name>
                    <arguments>
                    </arguments>
                </buildCommand>
                <buildCommand>
                    <name>org.eclipse.wst.validation.validationbuilder</name>
                    <arguments>
                    </arguments>
                </buildCommand>
            </buildSpec>
            <natures>
                <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
                <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
                <nature>org.eclipse.jdt.core.javanature</nature>
                <nature>org.eclipse.m2e.core.maven2Nature</nature>
                <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
            </natures>
        </projectDescription>

以上是关于此编译单元不在Java项目的构建路径上的主要内容,如果未能解决你的问题,请参考以下文章

此编译单元不在Java项目的构建路径上

Eclipse Java 构建路径

如何识别Squarespace上代码块中的冲突代码?

java控制某个字段当天递增

Java怎么进行单元测试?有具体过程和例子吗

向Order和Export构建路径添加外部jar会在项目中生成错误