J'ai installé le développeur Oracle Sql mais je ne reçois pas la page de démarrage. Une erreur JavaFx est rencontrée.
Comment puis-je résoudre ce problème?
Le message est assez clair, votre Java Home a besoin du moteur JavaFX/feature/jars pour que cette page fonctionne.
Nous avons plusieurs pages qui utilisent Java FX pour rendre les visualisations - la page d'accueil, la visionneuse d'instance et la surveillance SQL en temps réel sont les plus importantes.
Assurez-vous que vous utilisez Oracle Java 8 JDK. Je suppose que vous exécutez Open JDK - que nous ne prenons pas en charge techniquement, mais cela fonctionnera probablement.
Remarque: en tant que produit Oracle nécessitant Java, vous êtes autorisé à utiliser le JDK Oracle (v8 aujourd'hui ou v11 lorsque nous introduirons le support plus tard cet été) sans frais supplémentaires.
Ou allez chercher le (s) pot (s) et ajoutez-les à votre Java Home.
Comme d'autres l'ont déjà dit, le problème est qu'OpenJDK 8 (la version requise par Oracle SQL Developer) n'inclut pas JavaFX.
Il existe de nombreuses solutions possibles. Voici quelques-uns:
Installez une distribution OpenJDK 8 fournie avec JavaFX, telle que:
Sur Ubuntu, vous pouvez conserver votre OpenJDK existant et simplement installer les bibliothèques JavaFX:
Installez la version 8 des bibliothèques JavaFX
Sudo apt install libopenjfx-Java=8u161-b12-1ubuntu2 libopenjfx-jni=8u161-b12-1ubuntu2 openjfx=8u161-b12-1ubuntu2
Mettez les packages JavaFX en attente (sinon ils seront mis à niveau vers la version 11)
Sudo apt-mark hold libopenjfx-Java libopenjfx-jni openjfx
Installez Oracle Java 8
J'ai intentionnellement mis ce dernier parce que Oracle ne fournit plus de mises à jour gratuites à Java 8 , donc vous n'obtiendrez pas les derniers correctifs de sécurité si vous installez Oracle Java 8.
Si vous utilisez OpenJDK, il n'est pas nécessaire de passer à Oracle JDK (ou au sabot Oracle Java jars FX dans votre installation OpenJDK comme cela a été suggéré ci-dessus); Java FX est fait maintenant partie d'OpenJDK mais doit être installé séparément:
Sudo apt-get install openjfx
Eh bien, j'ai dû installer manuellement le SDK Java 8 Java. Et SQLDeveloper s'exécute sans erreur
Depuis que j'ai installé Ubuntu, je suis allé sur page de téléchargement d'Oracle SQL Developer et j'ai téléchargé Other Platforms. Notez juste en dessous qu'il a un lien vers le dernier Oracle 8 JDK (211) à côté des notes d'installation.
Vous pouvez suivre ici , mais c'est pour une installation complète d'Oracle Java 8 JDK et je veux que SQL Developer le pointe. Dans Sudo update-alternatives --config Java
j'ai toujours openjdk installé sans problème.
Donc dans/usr/lib/jvm:
Sudo tar -xvzf ~/Downloads/jdk-8u211-linux-x64.tar.gz
Informez Ubuntu de l'emplacement installé:
Sudo update-alternatives --install "/usr/bin/Java" "Java" "/usr/lib/jvm/jdk1.8.0_211/bin/Java" 0
Sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.8.0_211/bin/javac" 0
Vérifier avec Sudo update-alternatives --config Java
Dans le dossier local ou le répertoire utilisateur qui a exécuté sqldeveloper.sh:
nano/vi/vim/emacs /home/user/.sqldeveloper/19.1.0/product.conf
mettre à jour la ligne SetJavaHome /usr/lib/jvm/someOpenJDKInstallation
à SetJavaHome /usr/lib/jvm/jdk1.8.0_211/
Ou si vous exécutez pour la première fois, répondez à ce répertoire /usr/lib/jvm/jdk1.8.0_211/ quand il demande un JDK.
Pour ceux qui obtiennent une mise à niveau récente vers Java 11 comme jre par défaut et obtiennent une application qui ne fonctionne pas avec elle (j'ai toujours besoin de Java 8) je trouve juste que vous pouvez toujours rétrograder openjfx (cela fonctionne pour SQL Developper dans mon cas)
Sudo apt install libopenjfx-Java=8u161-b12-1ubuntu2
Sudo apt install libopenjfx-jni=8u161-b12-1ubuntu2
Sudo apt install openjfx=8u161-b12-1ubuntu2
Alors. vérifiez que vous disposez de l'OpenJFX 8:
$ dpkg -l | grep openjfx
ii libopenjfx-Java 8u161-b12-1ubuntu2 all JavaFX/OpenJFX 8 - Rich client application platform for Java (Java libraries)
ii libopenjfx-jni 8u161-b12-1ubuntu2 AMD64 JavaFX/OpenJFX 8 - Rich client application platform for Java (native libraries)
ii openjfx 8u161-b12-1ubuntu2 AMD64 JavaFX/OpenJFX 8 - Rich client application platform for Java
J'espère que ça aide!
Pour info, le JDK installé avec 18.4 XE ne comprend pas JavaFX.
[Oracle@localhost ~]$ which Java
/opt/Oracle/product/18c/dbhomeXE/jdk/bin/Java
[Oracle@localhost ~]$ Java -version
Java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)