6
votes

Les références aux méthodes statiques d'interface ne sont autorisées qu'au niveau source 1.8 ou supérieur

De quoi ai-je besoin pour résoudre ce problème? Comment changer la bibliothèque JRE dans Eclipse Project?

import java.util.Set;
import java.util.SortedSet;
import java.util.TreeSet;
import java.util.stream.Stream;
import java.util.stream.Collectors;

public class LabelGroup {
SortedSet<String> strSet1 = Stream.of("A", "B", "C", "D")
             .collect(Collectors.toUnmodifiableSet());
    
}

Eclipse montre à Stream. De:

Les références aux méthodes statiques d'interface ne sont autorisées qu'au niveau source 1.8 ou supérieur

J'ai essayé d'installer un nouveau logiciel à partir du site officiel comme suggéré par wiki .

Réponse:

Impossible de trouver (le logiciel).

À propos d'Eclipse: Eclipse IDE pour les développeurs Enterprise Java Version: 2018-12 (4.10.0) ID de build: 20181214-0600

Paramètres du projet: chemin de construction java: bibliothèque système JRE [JavaSE - 1.7]


8 commentaires

Vous êtes-vous assuré que la version Java de votre projet est Java10 ou supérieure? API Java 10 => Collectors.toUnmodifiableSet


@nullpointer Mes paramètres de projet: chemin de construction java: Bibliothèque système JRE [JavaSE - 1.7] Comment changer la version du langage Java?


Cela pourrait aider stackoverflow.com/questions/12588537/...


Votre problème est que l'exception indique qu'une fonctionnalité n'est disponible que dans la version 1.8 ou ultérieure et vos paramètres indiquent que vous utilisez la version 1.7.


Pas beaucoup de valeur dans cette question. Veuillez effectuer une recherche approfondie avant de publier et effectuer un dépannage.


Duplicata de: Modification de la version Java depuis Eclipse


Copie possible de la modification de la version de Java depuis Eclipse


J'ai lutté pendant près de 5 heures pour trouver une solution à mon problème. J'ai essayé tout ce qui était suggéré dans les commentaires. Installation de Java 11, modification du chemin de construction, modification de l'environnement d'exécution ... presque tous les paramètres pouvant afficher Java 11. Mais le problème n'a pas été résolu. Enfin, lorsque j'ai changé le niveau de conformité du compilateur à 11, seul le problème a été résolu.


3 Réponses :


2
votes

Vous avez installé JDK 7 au lieu de JDK 8. L'API Stream n'apparaît que dans Java 8. Vous pouvez télécharger Java 8 (JDK 8 ou OpenJDK) depuis le site officiel et l'installer en tant que JDK dans votre projet.


Cliquez sur le bouton Ajouter une bibliothèque . Il amène votre écran pour pointer vers l'emplacement Java.

Sélectionnez Répertoire , touchez à droite à côté de JRE home et pointez sur l'emplacement du dossier installé.


0 commentaires

6
votes

Si vous travaillez sur un projet maven et que vous ne pouvez pas modifier la bibliothèque JRE dans Eclipse, vous pouvez ajouter la dépendance suivante au pom.xml

<properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
</properties>


0 commentaires

0
votes

Si vous êtes sûr que Java> = 1.8 est installé et est utilisé dans votre espace de travail, essayez de confirmer que vous n'avez pas activé les «Paramètres spécifiques au projet» pour ce projet particulier.


0 commentaires