Ce sera un peu plus long, mais veuillez rester en contact.
En utilisant Electron et Cordova, je souhaite développer une application multi-plateforme avec HTML / CSS / JavaScript, et je construis un environnement. J'ai pu créer une application de test pour Windows, macOS et iOS, mais je suis tombé sur le stade de la préparation pour Android.
Après avoir créé une application de test avec Cordova, j'ai pu tester l'appareil iOS réel.
Vérifier le fonctionnement avec l'émulateur Android → Je voulais tester la machine réelle, et quand j'ai essayé cordova run android
après avoir ajouté la plate-forme avec Cordova, cela ne fonctionnait pas bien en raison d'une erreur.
Message d'erreur
CordovaError: Requirements check failed for JDK 1.8 or greater
La version de JDK (Java Development Kit) dans l'environnement actuel semble être ancienne.
Tout d'abord, vérifiez la version JDK en vous référant au site ci-dessous.
Désinstallation de «Java 6 [Apple Edition]» http://www.keyton-co.jp/blog/article/Java6forMacUninstall
Comment installer / mettre à jour le JDK pour macOS https://qiita.com/takayamag/items/1469c59370df348240f8
Dans le terminal, procédez comme suit:
python
$ java -version
résultat
java version "10.0.1" 2018-04-17
Java(TM) SE Runtime Environment 18.3 (build 10.0.1+10)
Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10.0.1+10, mixed mode)
C'est la dernière version.
Ensuite, procédez comme suit:
python
$ /usr/libexec/java_home -V
résultat
Matching Java Virtual Machines (4):
10.0.1, x86_64: "Java SE 10.0.1" /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home
1.8.0_172, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home
1.6.0_65-b14-468, x86_64: "Java SE 6" /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
1.6.0_65-b14-468, i386: "Java SE 6" /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home
Il existe plusieurs JVM. Vous devez peut-être gérer la version du JDK. Il existe de bons articles sur la gestion des versions de JDK:
[Édition 2018] 4 choses pour créer un environnement de développement Android sur Mac
C'est ennuyant ... (´ ・ ω ・ `) Au lieu de cela, cela semble être assez difficile.
La machine est différente de celle de l'article «gulp crash on Node 10.0.0» que j'ai uploadé l'autre jour. Bien qu'il s'agisse d'un iMac pour la CG, la production vidéo et la production de conception, cette machine subit également des essais et des erreurs pour partager l'environnement. J'ai installé Java 6 pour utiliser les applications Adobe CS6.
Comme mentionné ci-dessus, il existe plusieurs JVM, donc cela semble difficile à gérer. Nous pourrons le gérer un par un, mais une fois que vous aurez désinstallé tout Java, il remplira son objectif initial.
Veuillez désinstaller en vous référant au site ci-dessus.
Supprimer les informations du package Java
$ sudo pkgutil --forget com.apple.pkg.JavaForMacOSX107
ruby:1.6.0.Supprimer jdk
$ sudo rm -rf /Library/Java/JavaVirtualMachines/1.6.0.jdk/
Confirmer la suppression
$ ls -ld /Library/Java/JavaVirtualMachines/1.6.0.jdk
Si `ls: /Library/Java/JavaVirtualMachines/1.6.0.jdk: Aucun fichier ou répertoire de ce type n'est renvoyé, la suppression est réussie.
Confirmation supplémentaire
$ /usr/libexec/java_home -V
résultat
Matching Java Virtual Machines (2):
10.0.1, x86_64: "Java SE 10.0.1" /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home
1.8.0_172, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home
python
$ sudo rm -rf /Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/
Vérifiez le résultat
$ ls -ld /Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/
Si `ls: /Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/: Aucun fichier ou répertoire de ce type n'est renvoyé, la suppression est réussie.
Confirmation supplémentaire
$ /usr/libexec/java_home -V
résultat
Matching Java Virtual Machines (1):
10.0.1, x86_64: "Java SE 10.0.1" /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home
python
$ sudo rm -rf /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/
Vérifiez le résultat
$ ls -ld /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/
Si `ls: /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/: Aucun fichier ou répertoire de ce type n'est renvoyé, la suppression est réussie.
Confirmation supplémentaire
$ /usr/libexec/java_home -V
résultat
Unable to find any JVMs matching version "(null)".
Matching Java Virtual Machines (0):
Default Java Virtual Machines (0):
No Java runtime present, try --request to install.
Exécutez chacune des opérations suivantes pour supprimer les informations sur le package liées aux paramètres du navigateur et de l'environnement.
python
$ sudo rm -fr /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
$ sudo rm -fr /Library/PreferencePanes/JavaControlPanel.prefPane
$ sudo rm -fr ~/Library/Application\ Support/Java
Quand j'ai lancé cordova run android
,
python
CordovaError: Failed to find 'JAVA_HOME' environment variable. Try setting it manually.
Cela a changé pour l'erreur. Comme cela signifie "Je n'ai pas Java", j'ai commencé à construire à partir de l'installation Java.
Java 6 est temporairement suspendu. (* Parce qu'il est utilisé uniquement dans Adobe CS6 et qu'il n'est pas prévu d'utiliser les applications CS6 dans un proche avenir)
Exécutez brew cask install java8
.
C'est le résultat de l'exécution de cordova run android
.
résultat
CordovaError: Could not find an installed version of Gradle either in Android Studio,
or on your system to install the gradle wrapper. Please include gradle
Sans Gradle (outil de construction) ...
Maintenant que le problème de la version Java a été résolu, nous continuerons à créer l'environnement de développement Android.
... C'est assez gênant.
À moins que je ne développe une application, je n'étais pas vraiment au courant de Java, mais quand je l'ai approfondi à nouveau, le contenu de la machine était étonnamment désordonné. Même si cela a l'air rafraîchissant, il est mis et retiré de ceci et cela. La procédure de suppression et de reconstruction fondamentale à partir de zéro comme cette fois doit continuer à être apprise par les organisateurs.
Cela fait longtemps, mais merci d'avoir lu jusqu'au bout.