web-dev-qa-db-fra.com

Java ne peut pas accéder à la classe, fichier de classe introuvable

Lorsque j'essaie de créer un projet dans IntelliJ, je reçois l'erreur suivante sur cette ligne:

Sentence sent = new Sentence();
 sent.emptySegments();

Erreur:

Error:(151, 10) Java: cannot access javax.xml.bind.RootElement
class file for javax.xml.bind.RootElement not found

Sentence est une classe qui implémente le RootElementinterface

import javax.xml.bind.RootElement;
...
public class Sentence extends MarshallableRootElement implements RootElement   {

Tous les packages existent et je peux passer à la déclaration de chaque interface ou classe mais je ne sais pas pourquoi IntellJ dit qu'il ne peut pas y accéder ou les trouver? Cependant RootElement est une interface et non une classe

public interface RootElement extends Element {
    void validate() throws StructureValidationException;
}

La déclaration ci-dessus se trouve dans un fichier jar nommé jaxb-rt-1.0-ea.jar et il existe dans les bibliothécaires du Projet.

11
Ahmad

Le projet comportait plusieurs modules. Alors que la bibliothèque a été ajoutée aux bibliothèques de projet, certains modules n'en ont pas eu dans leur partie dépendance. J'ai donc résolu le problème en utilisant les étapes suivantes dans IntelliJ

Créer une bibliothèque de modules et l'ajouter aux dépendances du module:

  1. Ouvrez la boîte de dialogue Structure du projet (par exemple, Ctrl + Maj + Alt + S).
  2. Dans le volet gauche de la boîte de dialogue, sélectionnez Modules.
  3. Dans le volet de droite, sélectionnez le module qui vous intéresse.
  4. Dans la partie droite de la boîte de dialogue, sur la page Module, sélectionnez l'onglet Dépendances.
  5. Dans l'onglet Dépendances, cliquez sur + (en haut à droite) et sélectionnez Jars ou répertoires.
  6. Dans la boîte de dialogue qui s'ouvre, sélectionnez les fichiers et dossiers nécessaires. Il peut s'agir de fichiers, répertoires et archives .class et .Java individuels
    (. jar et .Zip) contenant ces fichiers ainsi que des répertoires avec
    Bibliothèques natives Java (.dll, .so ou .jnilib).
  7. Cliquez sur OK. Si nécessaire, sélectionnez l'option Exporter et modifiez l'étendue des dépendances.
  8. Cliquez sur OK dans la boîte de dialogue Structure du projet.
12
Ahmad

Essaye ça

  1. Allez dans Fichier
  2. Invalider les caches/redémarrer
  3. Vous pouvez choisir uniquement invalider et redémarrer
7
Meena Chaudhary

Le projet de reconstruction a fonctionné pour moi.

3
Arda Ç.