Correction de l'erreur Reach End of File While Parsing en Java

Mohammad Irfan 12 octobre 2023
  1. reach end of the file while parsing - Accolade de classe manquante en Java
  2. reach end of the file while parsing - Manquant si Curly Block Brace en Java
  3. reach end of the file while parsing - Accolade de boucle manquante en Java
  4. reach end of the file while parsing - Méthode manquante Curly Brace en Java
  5. Éviter l’erreur reach end of the file while parsing en Java
Correction de l'erreur Reach End of File While Parsing en Java

Ce tutoriel introduit une erreur reach end of the file while parsing lors de la compilation du code en Java.

L’erreur reach end of the file while parsing est une erreur de compilation. Lorsqu’une accolade est manquante pour un bloc de code ou qu’une accolade supplémentaire se trouve dans le code.

Ce didacticiel examinera différents exemples de la façon dont cette erreur se produit et comment la résoudre. L’erreur reach end of the file while parsing est la façon dont le compilateur indique qu’il a atteint la fin du fichier mais qu’il ne trouve pas sa fin.

En Java, chaque accolade ouvrante ({) a besoin d’une accolade fermante (}). Si nous ne mettons pas d’accolade là où c’est nécessaire, notre code ne fonctionnera pas correctement et nous obtiendrons une erreur.

reach end of the file while parsing - Accolade de classe manquante en Java

Nous avons oublié d’ajouter des accolades fermantes pour la classe dans l’exemple ci-dessous.

Lorsque nous compilons ce code, il renvoie une erreur à la console. L’erreur reach end of the file while parsing se produit si le nombre d’accolades est inférieur au nombre requis.

Regardez le code ci-dessous :

public class MyClass {
  public static void main(String args[]) {
    print_something();
  }

Production :

MyClass.java:6: error: reached end of file while parsing
    }
     ^
1 error

L’accolade fermante de MyClass est manquante dans le code ci-dessus. Nous pouvons résoudre ce problème en ajoutant une accolade supplémentaire à la fin du code.

Regardez le code modifié ci-dessous :

public class MyClass {
  static void print_something() {
    System.out.println("hello world");
  }
  public static void main(String args[]) {
    print_something();
  }
}

Production :

hello world

Examinons les exemples où cette erreur peut se produire.

reach end of the file while parsing - Manquant si Curly Block Brace en Java

Le bloc if manque l’accolade fermante dans le code ci-dessous. Cela conduit à l’erreur reach end of the file while parsing lors de la compilation du code en Java.

public class MyClass {
  public static void main(String args[]) {
    int x = 38;
    if (x > 90) {
      // do something
      System.out.println("Greater than 90");
    }
  }

Production :

MyClass.java:8: error: reached end of file while parsing
}
 ^
1 error

Nous pouvons résoudre cette erreur en ajoutant l’accolade à l’endroit approprié (à la fin du bloc if). Regardez le code ci-dessous :

public class MyClass {
  public static void main(String args[]) {
    int x = 38;
    if (x > 90) {
      // do something
      System.out.println("Greater than 90");
    } // this brace was missing
  }
}

Le code ci-dessus se compile sans générer d’erreur.

Production :

Greater than 90

reach end of the file while parsing - Accolade de boucle manquante en Java

Les accolades manquantes peuvent provenir d’une boucle while ou for. Dans le code ci-dessous, il manque l’accolade fermante requise dans le bloc de boucle while, ce qui entraîne un échec de la compilation.

Voir l’exemple ci-dessous.

public class MyClass {
  public static void main(String args[]) {
    int x = 38;
    while (x > 90) {
      // do something
      System.out.println("Greater than 90");
      x--;
    }
  }

Production :

MyClass.java:10: error: reached end of file while parsing
}
 ^
1 error

Nous pouvons résoudre cette erreur en plaçant l’accolade à la position requise (à la fin de la boucle while). Regardez le code modifié ci-dessous :

public class MyClass {
  public static void main(String args[]) {
    int x = 38;
    while (x > 90) {
      // do something
      System.out.println("Greater than 90");
      x--;
    } // This brace was missing
  }
}

Le code ci-dessus se compile sans générer d’erreur.

Production :

Greater than 90

reach end of the file while parsing - Méthode manquante Curly Brace en Java

Dans ce cas, nous avons défini une méthode dont l’accolade fermante est manquante, et si nous compilons ce code, nous obtenons une erreur de compilation. Regardez le code ci-dessous.

public class MyClass {
  public static void main(String args[]) {
    customFunction();
  }
  static void customFunction() {
    System.out.println("Inside the function");
  }

Production :

MyClass.java:9: error: reached end of file while parsing
}
 ^
1 error

Nous pouvons résoudre cette erreur en plaçant l’accolade à la position requise (à la fin du corps de la fonction). Regardez le code modifié ci-dessous :

public class MyClass {
  public static void main(String args[]) {
    customFunction();
  }
  static void customFunction() {
    System.out.println("Inside the function");
  }
}

Production :

Inside the function

Éviter l’erreur reach end of the file while parsing en Java

Cette erreur est très courante et très facile à éviter.

Pour éviter cette erreur, nous devons correctement indenter notre code. Cela nous permettra de localiser facilement l’accolade fermante manquante.

Nous pouvons également utiliser des éditeurs de code pour formater automatiquement notre code et faire correspondre chaque accolade ouvrante avec son accolade fermante. Cela nous aidera à trouver où l’accolade fermante est manquante.

Article connexe - Java Error