D'accord. J'ai eu le même problème, mais je n'ai pas pu télécharger la version 1.8 car elle se cache sous un autre nom. C'est le 8u152. Après quelques heures, je l'ai trouvé ici: oracle.com/technetwork/java/javase/downloads
...
Réponses:
58
Désinstaller tous les JDK précédents, y compris 1.8 Installer JDK 1.8
@Urbycoz vous avez juste besoin d'aller Add or Remove Programs/Program Featuresdans Windows OS. Ensuite, supprimez toutes les versions précédentes de Java. J'avais version 7également installé et après uninstallingcela, j'ai cordova run androidtravaillé. Bonne chance.
Aakash
1
Mais qu'est-ce que ça veut dire? Comment cordova sélectionne-t-il le JDK si différents JDK sont installés? Il n'est pas possible que vous ne puissiez avoir qu'un seul JDK (par exemple, construire une machine)?
@MadNeox désinstaller une autre version est juste une solution de contournement pas la solution
Gandhi
a fait l'affaire pour moi. allé à appwiz.cpl (à partir de Windows cmd) et supprimé java 7 et java sdk 7.
Ortiz
53
Sous Linux (Debian / Ubuntu), cela peut être résolu en sélectionnant un SDK Java 1.8 dans
sudo update-alternatives --config javac
Changer JAVA_HOMEdirectement la variable env ne semble pas avoir d'effet.
EDIT: répondre aux commentaires: Cela a probablement quelque chose à voir avec le fait que les nouvelles installations Java Debian (et apparemment Ubuntu) via le gestionnaire de paquets n'utilisent pas la JAVA_HOMEvariable d'environnement pour déterminer l'emplacement du JRE. Voir ceci et ce post pour plus d'informations.
Tu as fait ma journée. J'ai tout essayé ces derniers jours. Merci beaucoup. Mais pourquoi cela fonctionne seulement? Pourquoi définir une variable n'a aucun effet?
my-
1
A travaillé pour moi aussi sur Ubuntu ... Je l'avais fait pour javamais pas javac! Maintenant, pas besoin de désinstaller Java 9 :)
hughjdavey
Même remarque ici. Bien que JAVA_HOMEpointant vers la droite 1.8 JDK, seule la mise à jour du système par défaut satisfait Cordova.
myoan
1
Lors de l'exécution de sudo update-alternatives --config javac Il n'y a qu'une seule alternative dans le groupe de liens javac (fournissant / usr / bin / javac): / usr / lib / jvm / java-11-openjdk-amd64 / bin / javac Rien à configurer . je dois retourner à java-8-openjdk est-ce que je peux le faire?
Taieb
Pourquoi c'est une solution dans ubuntu. Tout comme myoan l'a dit, pourquoi mettre à jour le système par défaut satisfait cordova?
Jithin
40
Vous n'avez pas besoin de désinstaller une version supérieure de sdk. installez simplement jdk1.8.0_161 ou ne le faites pas s'il est déjà installé.
Maintenant, définissez simplement la JAVA_HOMEvariable USER (et non la variable système) comme indiqué dans l'image ci-dessous.
De cette façon, vous n'avez pas à désinstaller la version supérieure et le problème est résolu.
Vous pouvez avoir une version supérieure à 8 mais Cordova ne prend en charge que le JDK 1.8. Voir ce lien Documentation Cordova
J'ai jeté un coup d'œil au morceau de code qui vérifie réellement le numéro de version de votre java. Recherchez les éléments suivants: module.exports.check_java dans les plates-formes / android / cordova / lib / check_reqs.js . à la ligne 220. Vous verrez une expression régulière et un commentaire laissé par l'équipe que Java 10 sera pris en charge à l'avenir.
L'expression régulière existante échouera lorsqu'elle est exécutée sur les dernières versions de java telles que Java 10. C'est parce que Java 8 ou 9 sont enregistrés au format suivant: 1. [8-9]. ** mais Java 10 est enregistré comme 10. ** et l'expression régulière recherche une version au format 1. [8-9]. **
// Let's check for at least Java 8, and keep it future proof so we can support Java 10
var match = /javac ((?:1\.)(?:[8-9]\.)(?:\d+))|((?:1\.)(?:[1-9]\d+\.)(?:\d+))/i.exec(output);
Ma solution:
Vous n'avez pas besoin de désinstaller votre version actuelle du JRE ou du JDK puisque le programme d'installation installe chaque version dans un dossier spécifique.
La désinstallation d'anciennes versions de JDK aurait fonctionné. Mais cela peut être une solution de contournement, je suppose. J'ai rencontré le même problème et j'ai remarqué que la nouvelle version de JDK et l'ancienne version du chemin JDK ont été mentionnées dans 'path'variable environnementale.
La suppression du chemin JDK de l'ancienne version de 'pathla variable d'environnement a fait l'affaire pour moi. J'espère que ça aide quelqu'un aussi.
Oui, je suis capable d'exécuter la commande de construction avec cela, mais j'ai toujours du mal avec la commande d'exécution 'ionic cordova run android', affichant l'erreur INSTALL FAILED UPDATE INCOMPATIBLE.
supriya chauhan
@supriyachauhan, vous pouvez essayer de réinstaller le contenu complet une fois de plus. Sinon, vous devrez peut-être fournir des détails élaborés pour affiner le problème
Gandhi
9
J'ai découvert que ma variable d'environnement path pointait vers java 1.7 alors que JAVA_HOME pointait vers 1.8, j'ai donc édité la variable path sur 1.8 et ça allait.
dans mon cas, JAVA_HOME pointait vers C: \ Program Files (x86) \ Java \ jdk1.7.0_55
quand j'ai écrit où java dans cmd il a généré C: \ Program Files (x86) \ Java \ jdk1.7.0_55 avec le chemin java.exe, j'ai changé la variable JAVA_HOME des variables d'environnement en C: \ Program Files \ Java \ jdk1.8.0_20 & cela a fonctionné, donc il semble que j'ai eu 2 instances jdk et cordova a besoin de la version v1.8. *.
Vérifiez où pointe votre variable Path. J'avais JAVA_HOME pointant vers 1.8 mais dans Path, il indiquait une version différente. A bien fonctionné après avoir aligné les deux!
ahb
6
MAC: Accédez à: / Library / Java / JavaVirtualMachines Assurez-vous que vous n'avez que jdk1.8.0_201.jdk Si vous en avez plusieurs, supprimez les autres JDK
Les gars pour obtenir le bon mix sur Windows , vous devez faire ce qui suit
Téléchargez et installez n'importe quelle version de JDK 1.8 ou supérieur.
Ouvrez les variables d'environnement, créez une variable d'environnement appelée JAVA_HOME et définissez la valeur sur le chemin d'installation JDK.
C:\Program Files\Java\jdk1.8.0_162
assurez-vous de ne pas ajouter le \bindans la valeur.
Dans votre variable de chemin système, mettez un point-virgule ;et ajoutez cette valeur au chemin système, par exemple C:\Program Files\Java\jdk1.8.0_162\bin;Ici, le \binest ajouté.
Remarque: les variables d'environnement sont délicates. Elles sont censées être fermées par un ; avant d'en ouvrir un autre. C'est pourquoi nous en mettons un avant d'ajouter la valeur et un après la valeur pour la fermer.
Fermez maintenant le terminal et rouvrez-le, puis exécutez les commandes précédentes.
Aujourd'hui, j'ai également eu cette erreur Cordova : Requirements check failed for JDK 1.8 or greaterdans mon Mac OS lors de la création de l'application Ionic lorsque j'exécute la commande ionic cordova build --release androidvia un terminal.
Notez que, malgré ce que dit le message, il semble que cela signifie qu'il veut la version 1.8, et envoie ce message si vous avez une version ultérieure .
Ce qui suit est mes tentatives précédentes qui m'ont conduit à la réponse ci-dessus, qui a ensuite fonctionné ... Vous devrez peut-être faire quelque chose de différent en fonction de ce qui est installé, alors peut-être que ces notes pourraient vous aider:
Cela signifie que je peux remplacer le /usr/bin/javac... voir les commandes en haut de la réponse ...
La commande pour le définir sur jdk1.8 en utilisant ln, en haut de cette réponse, est ce qui a fonctionné pour moi.
Ce message d'erreur rend l'utilisateur confus, l'écran de réussite comme ci-dessous.
Le message d'erreur incite l'utilisateur à essayer de corriger l'échec de la construction avec la configuration JAVA_HOME. Mais le vrai problème ne se situe pas seulement dans JAVA_HOME.
Je corrige ce problème avec une configuration correcte dans JAVA_HOME et Path dans "variable système".
Hope peut aider à résoudre le problème, mais pas à réinstaller JDK.
La réponse publiée par MadNeox est correcte.J'étais confronté à un problème similaire, j'avais installé jdk 9 ainsi que la version 1.8
J'ai d'abord essayé en gardant jdk 9 et en supprimant la 1.8, cela afficherait une erreur La vérification des exigences a échoué
Ensuite, j'ai essayé en désinstallant jdk9 et en réinstallant 1. cette fois, il montrait l'échec de l'exécution de javac-version
Après avoir joué avec les variables d'environnement pendant un certain temps, j'ai enfin trouvé la solution
À ce stade, mon système n'a que la version jdk 1.8 Cordova: 7.1.0
-Ouvrir l'onglet Variables d'environnement -Sous les variables utilisateur créent une nouvelle variable PATH -donnez-lui la valeur suivante C: \ Program Files \ Java \ jdk1.8.0_151 \ bin (peut changer selon l'endroit où vous avez installé votre jdk)
Cela devrait résoudre votre problème J'espère que cela vous aidera
Bien que la réponse ait déjà été donnée, il m'a fallu un certain temps pour comprendre où je m'étais trompé, alors j'ai décidé de publier ceci en espérant que cela ferait gagner du temps à quelqu'un d'autre
Assurez-vous simplement que les mêmes versions de JDK (c'est-à-dire 1.8 dans ce cas) sont accessibles à partir de PATHla variable d'environnement et JAVA_HOME. Exemple: Si
JAVA_HOME=C:\Program Files\Java\jdk1.8.0_152alors la
PATHvariable doit également contenir le chemin ci-dessus et surtout avant tout autre chemin (s'il y en a) si JDK / JRE déjà mentionné dans la PATHvariable. Vous pouvez choisir de désinstaller d'autres versions si aucune autre application n'utilise une version différente de java.
Si jdk8 et jdk9 sont tous deux installés, vous devez vérifier la version
dans le chemin et vers lequel pointe JAVA_HOME.
Dans le journal que vous avez publié, je vois que JAVA_HOME mène au JDK9.
modifiez votre globel JAVA_HOME env var pour cibler JDK8 ou vous pouvez changer JAVA_HOME dans PowerShell avant d'utiliser la CLI cordova si vous souhaitez utiliser jdk8 uniquement pour cordova:
J'ai rencontré le même problème avec jdk1.8.0_201.Il a été résolu lorsque j'ai créé JAVA_HOME = C: \ Program Files \ Java \ jdk1.8.0_201 et ajouté "C: \ Program Files \ Java \ jdk1.8.0_201 \ bin" dans variable de chemin
J'ai (Open) JDK 8 et 11 installé sur Windows 10 et j'ai eu le même problème. Pour moi, ce qui suit a fonctionné:
Définissez JAVA_HOME pour qu'il pointe vers JDK 8. (mentionné dans de nombreuses réponses auparavant.) ET
Supprimez (!) JDK 11 du PATH car il s'est avéré que - bien que affichant le chemin JAVA_HOME pointant vers JDK 8 - Cordova a en fait accédé au JDK 11 qui était inclus dans le PATH, ce qui a fait échouer la vérification de la version de Java.
C'est une vieille question, mais comme j'ai juste eu le même problème, mais l'erreur avait une autre source, voici une réponse courte.
Problème rencontré sous Windows (uniquement) et avec l'IDE Webstorm 2019.2
Dans la version 2019.2, Webstorm avait un problème, car il utilisait en interne open jdk pour la variable% JAVA_HOME% au lieu du java java ciblé (à partir du système d'exploitation).
Dans mon cas (ouais c'est vieux, c'est un vieux projet cordova ...)
exécution java -versiondans Windows cmd.exe:
$ java -version
java version "1.8.0_221"
mais exécution java -versiondans le terminal Webstorms:
$ java -version
openjdk version "11.0.3" 2019-04-16
// more output
Un correctif est venu avec le correctif publié plus tard (aujourd'hui), la version 2019.2.1. Maintenant, Webstorm utilise la variable os% JAVA_HOME% comme il se doit et la java -versionsortie est identique dans les deux cas.
L'erreur se produit lorsque le chemin par défaut de java est défini sur une version autre que Java 8 ou JDK 1.8. *
Pour mon cas, j'ai installé Java 11 après avoir installé Java 8
Vous pouvez tester en exécutant:
java -version
Pour mon cas, il est retourné:
java version "11.0.8" 2020-07-14 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.8+10-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.8+10-LTS, mixed mode)
Pour résoudre ce problème, nous devons nous assurer que le chemin java pointe vers les binaires Java 8 à la place
En supposant que vous avez déjà installé Java 8 ou JDK 1.8. *:
Assurez-vous que JAVA_HOME et JRE_HOME sont définis (assurez-vous qu'il pointe vers Java 1.8. *)
À l'intérieur de PATH, assurez-vous que %JAVA_HOME%\binou C:\Program Files\Java\jdk1.8.0_251\binest ajouté
Source du problème: Mon installation du JDK 11 a ajouté deux entrées PATH en haut, prenant la priorité ou remplaçant le %JAVA_HOME%\binPATH qui pointe vers JDK 1.8. *
Ne les ajoutez pas si vous ne les avez pas, recherchez d'autres entrées PATH qui peuvent remplacer %JAVA_HOME%\bin
Cliquez sur "Descendre" pour les entrées de remplacement jusqu'à ce qu'elles soient en dessous %JAVA_HOME%\bin
%JAVA_HOME%\bin PATH qui pointe vers Java 8 sera désormais prioritaire sur les autres entrées PATH qui pointe vers JDK 11
Enregistrez et ouvrez un nouveau terminal et exécutez
java -version
Pour mon cas, il est ensuite revenu:
java version "1.8.0_251"
Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)
Il semble que le SDK Android ne supporte pas Java 9. Passez à la version 8 si vous ne voulez pas revenir à JDK 1.8, ce qui pour moi est ridicule. JDK 8 fonctionne pour moi, mais assurez-vous de définir correctement la variable d'environnement JAVA_HOME sur l'emplacement de votre installation JDK.
Selon la documentation officielle de Cordova, il ne prend en charge que JDK 1.8 pas plus grand jusqu'à la date (avril 2018) . Ou il peut y avoir un problème avec le script de détection de version dans cordova.
Sur ma machine, la configuration de java et javac était incohérente: java pointait vers JDK 9 tandis que javac pointait vers JDK 8. La configuration des deux sur JDK 8 a résolu le problème.
ominug le
0
J'utilise Windows et j'ai deux versions jdk 1.8 et 14 quelque chose ...
Face au même problème et après quelques débogages, trouvez la solution.
définissez correctement JAVA_HOME.
Modifiez la valeur de la variable utilisateur PATH avec la nouvelle version de jdk (1.8).
Modifiez la valeur de la variable utilisateur PATH avec la nouvelle version de jdk (1.8).
Réponses:
Désinstaller tous les JDK précédents, y compris 1.8 Installer JDK 1.8
la source
Add or Remove Programs/Program Features
dansWindows OS
. Ensuite, supprimez toutes les versions précédentes de Java. J'avaisversion 7
également installé et aprèsuninstalling
cela, j'aicordova run android
travaillé. Bonne chance.Sous Linux (Debian / Ubuntu), cela peut être résolu en sélectionnant un SDK Java 1.8 dans
Changer
JAVA_HOME
directement la variable env ne semble pas avoir d'effet.EDIT: répondre aux commentaires: Cela a probablement quelque chose à voir avec le fait que les nouvelles installations Java Debian (et apparemment Ubuntu) via le gestionnaire de paquets n'utilisent pas la
JAVA_HOME
variable d'environnement pour déterminer l'emplacement du JRE. Voir ceci et ce post pour plus d'informations.la source
java
mais pasjavac
! Maintenant, pas besoin de désinstaller Java 9 :)JAVA_HOME
pointant vers la droite 1.8 JDK, seule la mise à jour du système par défaut satisfait Cordova.Vous n'avez pas besoin de désinstaller une version supérieure de sdk. installez simplement jdk1.8.0_161 ou ne le faites pas s'il est déjà installé.
Maintenant, définissez simplement la
JAVA_HOME
variable USER (et non la variable système) comme indiqué dans l'image ci-dessous.De cette façon, vous n'avez pas à désinstaller la version supérieure et le problème est résolu.
la source
Ce qui fonctionnait, c'était la désinstallation de jdk 9 et la réinstallation de jkd 8.x
Sur Mac, pour désinstaller, accédez au terminal et procédez comme suit:
Ensuite, installez le jdk 8.x en téléchargeant le package .dmg à partir d'Oracle.
la source
Vous pouvez avoir une version supérieure à 8 mais Cordova ne prend en charge que le JDK 1.8. Voir ce lien Documentation Cordova
J'ai jeté un coup d'œil au morceau de code qui vérifie réellement le numéro de version de votre java. Recherchez les éléments suivants: module.exports.check_java dans les plates-formes / android / cordova / lib / check_reqs.js . à la ligne 220. Vous verrez une expression régulière et un commentaire laissé par l'équipe que Java 10 sera pris en charge à l'avenir.
L'expression régulière existante échouera lorsqu'elle est exécutée sur les dernières versions de java telles que Java 10. C'est parce que Java 8 ou 9 sont enregistrés au format suivant: 1. [8-9]. ** mais Java 10 est enregistré comme 10. ** et l'expression régulière recherche une version au format 1. [8-9]. **
Ma solution:
Vous n'avez pas besoin de désinstaller votre version actuelle du JRE ou du JDK puisque le programme d'installation installe chaque version dans un dossier spécifique.
1- Installer la version Java 8 Suivez ce lien
2- Mettez à jour vos variables d'environnement:
en les pointant vers l'emplacement où les JRE 8 et JDK 8 ont été installés.
Ouvrez une nouvelle session de terminal et exécutez la commande qui a échoué. Cela devrait fonctionner maintenant.
N'a pas marché?
En cas d'échec pour d'autres raisons, processus de débogage possible:
la source
La désinstallation d'anciennes versions de JDK aurait fonctionné. Mais cela peut être une solution de contournement, je suppose. J'ai rencontré le même problème et j'ai remarqué que la nouvelle version de JDK et l'ancienne version du chemin JDK ont été mentionnées dans
'path
'variable environnementale.La suppression du chemin JDK de l'ancienne version de
'path
la variable d'environnement a fait l'affaire pour moi. J'espère que ça aide quelqu'un aussi.la source
J'ai découvert que ma variable d'environnement path pointait vers java 1.7 alors que JAVA_HOME pointait vers 1.8, j'ai donc édité la variable path sur 1.8 et ça allait.
la source
dans mon cas, JAVA_HOME pointait vers C: \ Program Files (x86) \ Java \ jdk1.7.0_55
quand j'ai écrit où java dans cmd il a généré C: \ Program Files (x86) \ Java \ jdk1.7.0_55 avec le chemin java.exe, j'ai changé la variable JAVA_HOME des variables d'environnement en C: \ Program Files \ Java \ jdk1.8.0_20 & cela a fonctionné, donc il semble que j'ai eu 2 instances jdk et cordova a besoin de la version v1.8. *.
la source
MAC: Accédez à: / Library / Java / JavaVirtualMachines Assurez-vous que vous n'avez que jdk1.8.0_201.jdk Si vous en avez plusieurs, supprimez les autres JDK
la source
Je suis d'accord avec @Hozington. Cela devrait être le bogue sur le code Cordova de détection de la version Java. Ce que j'ai fait c'est:
JAVA_HOME
chemin par le JDK 8 et modifiez également lapath
variable.cordova build
nouveau.Et l'erreur a disparu!
la source
si vous avez plusieurs versions de JDK, vous pouvez exécuter
avant la construction de cordova, pour utiliser une version spécifique de jdk :)
la source
Les gars pour obtenir le bon mix sur Windows , vous devez faire ce qui suit
C:\Program Files\Java\jdk1.8.0_162
assurez-vous de ne pas ajouter le\bin
dans la valeur.;
et ajoutez cette valeur au chemin système, par exempleC:\Program Files\Java\jdk1.8.0_162\bin;
Ici, le\bin
est ajouté.la source
Parfois changer le chemin et
java-home
ne fonctionne pas. Vous devez ajouterà la trajectoire des variables environnementales.
la source
Aujourd'hui, j'ai également eu cette erreur
Cordova : Requirements check failed for JDK 1.8 or greater
dans mon Mac OS lors de la création de l'application Ionic lorsque j'exécute la commandeionic cordova build --release android
via un terminal.La commande ci-dessous résout mon problème: -
J'espère que cela aidera quelqu'un à l'avenir!
la source
Réponse MacOS avec plusieurs versions de Java installées et pas besoin de désinstaller
Montrez-moi les versions de Java que j'ai installées:
Pour le définir sur ma version jdk1.8:
$ ln -s /Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home/bin/javac /usr/local/bin/javac
Pour le définir sur ma version jdk11:
$ ln -s /Library/Java/JavaVirtualMachines/jdk-11.0.7.jdk/Contents/Home/bin/javac /usr/local/bin/javac
-------------------------------------------------- -----------------------
Notez que, malgré ce que dit le message, il semble que cela signifie qu'il veut la version 1.8, et envoie ce message si vous avez une version ultérieure .
Ce qui suit est mes tentatives précédentes qui m'ont conduit à la réponse ci-dessus, qui a ensuite fonctionné ... Vous devrez peut-être faire quelque chose de différent en fonction de ce qui est installé, alors peut-être que ces notes pourraient vous aider:
Réglez-le sur ma version jdk1.8
$ export PATH=/Library/Java/JavaVirtualMachines/jdk-11.0.7.jdk/Contents/Home/bin/javac:$PATH
Réglez-le sur ma version jdk11
$ export PATH=/Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home/bin/javac:$PATH
... mais en fait cela ne fonctionne pas car
/usr/bin/javac
c'est toujours ce qui s'exécute en premier:... pour voir ce qui s'exécute en premier sur le chemin:
Cela signifie que je peux remplacer le
/usr/bin/javac
... voir les commandes en haut de la réponse ...La commande pour le définir sur jdk1.8 en utilisant
ln
, en haut de cette réponse, est ce qui a fonctionné pour moi.la source
Ce message d'erreur rend l'utilisateur confus, l'écran de réussite comme ci-dessous.
Le message d'erreur incite l'utilisateur à essayer de corriger l'échec de la construction avec la configuration JAVA_HOME. Mais le vrai problème ne se situe pas seulement dans JAVA_HOME.
Je corrige ce problème avec une configuration correcte dans JAVA_HOME et Path dans "variable système".
Hope peut aider à résoudre le problème, mais pas à réinstaller JDK.
la source
La réponse publiée par MadNeox est correcte.J'étais confronté à un problème similaire, j'avais installé jdk 9 ainsi que la version 1.8
J'ai d'abord essayé en gardant jdk 9 et en supprimant la 1.8, cela afficherait une erreur La vérification des exigences a échoué
Ensuite, j'ai essayé en désinstallant jdk9 et en réinstallant 1. cette fois, il montrait l'échec de l'exécution de javac-version
Après avoir joué avec les variables d'environnement pendant un certain temps, j'ai enfin trouvé la solution
À ce stade, mon système n'a que la version jdk 1.8 Cordova: 7.1.0
-Ouvrir l'onglet Variables d'environnement -Sous les variables utilisateur créent une nouvelle variable PATH -donnez-lui la valeur suivante C: \ Program Files \ Java \ jdk1.8.0_151 \ bin (peut changer selon l'endroit où vous avez installé votre jdk)
Cela devrait résoudre votre problème J'espère que cela vous aidera
Bien que la réponse ait déjà été donnée, il m'a fallu un certain temps pour comprendre où je m'étais trompé, alors j'ai décidé de publier ceci en espérant que cela ferait gagner du temps à quelqu'un d'autre
la source
Assurez-vous simplement que les mêmes versions de JDK (c'est-à-dire 1.8 dans ce cas) sont accessibles à partir de
PATH
la variable d'environnement etJAVA_HOME
. Exemple: SiJAVA_HOME=C:\Program Files\Java\jdk1.8.0_152
alors laPATH
variable doit également contenir le chemin ci-dessus et surtout avant tout autre chemin (s'il y en a) si JDK / JRE déjà mentionné dans laPATH
variable. Vous pouvez choisir de désinstaller d'autres versions si aucune autre application n'utilise une version différente de java.la source
Si jdk8 et jdk9 sont tous deux installés, vous devez vérifier la version
dans le chemin et vers lequel pointe JAVA_HOME.
Dans le journal que vous avez publié, je vois que JAVA_HOME mène au JDK9.
modifiez votre globel JAVA_HOME env var pour cibler JDK8 ou vous pouvez changer JAVA_HOME dans PowerShell avant d'utiliser la CLI cordova si vous souhaitez utiliser jdk8 uniquement pour cordova:
la source
si vous avez plusieurs versions de Java installées et que vous devez les conserver, vous devez vérifier les éléments suivants:
la source
J'ai rencontré le même problème avec jdk1.8.0_201.Il a été résolu lorsque j'ai créé JAVA_HOME = C: \ Program Files \ Java \ jdk1.8.0_201 et ajouté "C: \ Program Files \ Java \ jdk1.8.0_201 \ bin" dans variable de chemin
la source
J'ai (Open) JDK 8 et 11 installé sur Windows 10 et j'ai eu le même problème. Pour moi, ce qui suit a fonctionné:
la source
C'est une vieille question, mais comme j'ai juste eu le même problème, mais l'erreur avait une autre source, voici une réponse courte.
Problème rencontré sous Windows (uniquement) et avec l'IDE Webstorm 2019.2
Dans la version 2019.2, Webstorm avait un problème, car il utilisait en interne open jdk pour la variable% JAVA_HOME% au lieu du java java ciblé (à partir du système d'exploitation).
Dans mon cas (ouais c'est vieux, c'est un vieux projet cordova ...)
exécution
java -version
dans Windows cmd.exe:mais exécution
java -version
dans le terminal Webstorms:Un correctif est venu avec le correctif publié plus tard (aujourd'hui), la version 2019.2.1. Maintenant, Webstorm utilise la variable os% JAVA_HOME% comme il se doit et la
java -version
sortie est identique dans les deux cas.J'espère que cela aide quelqu'un!
la source
L'erreur se produit lorsque le chemin par défaut de java est défini sur une version autre que Java 8 ou JDK 1.8. *
Pour mon cas, j'ai installé Java 11 après avoir installé Java 8
Vous pouvez tester en exécutant:
Pour mon cas, il est retourné:
Pour résoudre ce problème, nous devons nous assurer que le chemin java pointe vers les binaires Java 8 à la place
En supposant que vous avez déjà installé Java 8 ou JDK 1.8. *:
%JAVA_HOME%\bin
ouC:\Program Files\Java\jdk1.8.0_251\bin
est ajouté%JAVA_HOME%\bin
PATH qui pointe vers JDK 1.8. *Ne les ajoutez pas si vous ne les avez pas, recherchez d'autres entrées PATH qui peuvent remplacer
%JAVA_HOME%\bin
%JAVA_HOME%\bin
%JAVA_HOME%\bin
PATH qui pointe vers Java 8 sera désormais prioritaire sur les autres entrées PATH qui pointe vers JDK 11Pour mon cas, il est ensuite revenu:
Fixé!
la source
la source
Il semble que le SDK Android ne supporte pas Java 9. Passez à la version 8 si vous ne voulez pas revenir à JDK 1.8, ce qui pour moi est ridicule. JDK 8 fonctionne pour moi, mais assurez-vous de définir correctement la variable d'environnement JAVA_HOME sur l'emplacement de votre installation JDK.
la source
Selon la documentation officielle de Cordova, il ne prend en charge que JDK 1.8 pas plus grand jusqu'à la date (avril 2018) . Ou il peut y avoir un problème avec le script de détection de version dans cordova.
Cordova: installation des exigences
la source
Je viens de renommer l'ancien dossier JDK avec
_
, juste au cas où j'en aurais besoin davantage, et cela a fonctionné.la source
J'utilise Windows et j'ai deux versions jdk 1.8 et 14 quelque chose ...
Face au même problème et après quelques débogages, trouvez la solution.
Et ça a résolu
la source
La version Ubuntu / Debian Linux de cette réponse consiste à installer openjdk 8 et à définir la valeur par défaut via
update-alternatives
# install (open)jdk 8 sudo apt-get install -y openjdk-8-jdk # update java compiler and set to 1.8 update-alternatives --config javac # update java runtime (optional) update-alternatives --config java # Also set $JAVA_HOME and $PATH to your .bashrc (optional) echo 'export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64' >> ~/.bashrc echo 'export PATH="$PATH:$JAVA_HOME/bin' >> ~/.bashrc # load in current bash session source ~/.bashrc
la source