web-dev-qa-db-fra.com

Cette unité de compilation ne se trouve pas sur le chemin de construction d’un projet Java

Quand j'essaie d'utiliser ctrl+space cette erreur est affichée:

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

Je vois qu'il y a des sujets similaires, mais mon environnement de travail est Eclipse et je tire mon projet de Git (j'importe le projet en tant que projet général) et j'utilise Apache Ant. Quelqu'un peut-il m'aider?

29

Puisque vous avez importé le projet en tant que projet général, il n’a pas la nature Java et c’est le problème.

Ajoutez les lignes ci-dessous dans le fichier .project de votre espace de travail et actualisez-les.

<natures>
      <nature>org.Eclipse.jdt.core.javanature</nature>
</natures>
47
Loganathan Mohanraj

Allez dans Projet-> Clic droit-> Sélectionnez Propriétés -> Facettes du projet -> modifiez la version Java de votre version du JDK que vous utilisez.

8
Shaleen Agarwal

S'il s'agit d'un projet Maven, il est parfois utile de le réimporter:

  1. Cliquez avec le bouton droit sur le projet dans l’explorateur de projet et choisissez Supprimer.
  2. Fichier> Importer ...> Maven> Projets Maven existants> Suivant> Répertoire racine> Parcourez votre projet à partir du disque.

J'espère que cela résoudra le problème.

7
kumar

Une autre alternative à la solution de Loganathan Mohanraj (qui fait effectivement la même chose, mais à partir de l'interface graphique):

  1. Clic droit sur votre projet
  2. Allez dans "Propriétés"
  3. Choisissez "Projet Natures"
  4. Cliquez sur "Ajouter"
  5. Choisissez "Java"
  6. Cliquez sur "Appliquer et fermer"
7
Pradeep Anchan

Ajouter ceci au fichier .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>
0
Pavan Chitluri