Erreur s'est produite lors de l'initialisation de démarrage de la couche de FindException: Module non trouvé
De l'exécution d'un simple programme "Hello World" à l'aide de Java 9 résultats dans le message d'erreur suivant:
Erreur s'est produite lors de l'initialisation de démarrage de la couche
java.lang.le module.FindException: Module de com.pantech.myModule pas trouvé
De la ligne de commande que j'ai exécuté était:
java --module-path bin -m com.pantech.myModule/com.pantech.myModule.HelloWorld
Cette ligne de commande est exécutée à partir du répertoire parent de mon bin
répertoire qui contient toutes les .class
fichiers bytecode.
La module-info.class
fichier est situé dans le com.pantech.myModule
répertoire qui se trouve dans le bin
répertoire. Le HelloWorld.class
fichier contient la méthode main et est situé dans le répertoire du package dans le com.pantech.myModule
répertoire. Par conséquent, le chemin d'accès de l' HelloWorld.class
fichier est bin\com.pantech.myModule\com\pantech\myModule\HelloWorld.class.
La HelloWorld
classe est dans la com.pantech.myModule
package (package de même nom que le nom du module).
Je suis avec Windows 10, tout comme le Système d'Exploitation. De tout ce que j'ai lu, au-dessus de la ligne de commande doit être correcte. Des suggestions sur la façon de résoudre ce problème?
- Dans le répertoire est le module compilé le fichier? Semble que le répertoire que vous devez ajouter au chemin d'accès du module est
bin\com.pantech.myModule
- Le module compilé fichier (module-info.class) est situé dans le bin\com.pantech.myModule répertoire.
- Pourriez-vous partager la définition de la classe(à partir de package de déclaration) et de définition de module ainsi, pour la ci-dessus pour être reproduit, s'il vous plaît? Et honnêtement, pour de telles expériences, je prends le démarrage rapide ici de référence. (vous pouvez la croix-vérifier les commandes de compilation ainsi)
- Fichier de définition de Module (module-info.java) situé titres à rev enu.pantech.myModule répertoire contient les éléments suivants: module myModule {} le code source pour Le HelloWorld fichier contient les éléments suivants: package com.pantech.myModule; public class HelloWorld { public static void main(String [] args) { System.out.println("Bonjour le Monde à partir du module"); } }
- Le réponse par tretegfdg semble être de souligner l'erreur que vous faites. C'est pourquoi je suggère se référant au guide ainsi. Le nom du module, il est le même que le nom du package
com.greetings
(dans l'échantillon), d'où leur commande fonctionne. Aussi, reportez-vous à docs.oracle.com/javase/9/tools/java.htm pour plus de détails sur les commandes utilisées. - Dans Netbeans, j'ai simplement utilisé
Clean and Rebuild Project
et cela a fonctionné.
Vous devez vous connecter pour publier un commentaire.
La raison derrière cela est que pendant ce temps la création de votre propre classe, il avait également accepté de créer une classe par défaut comme prescrit par votre IDE et après l'écriture de votre code dans votre propre classe, vous obtenez une telle erreur. Afin d'éliminer ce problème, allez dans le dossier du PROJET →
src
→ package par Défaut. Ne conserver qu'une seule classe (qui vous avait écrit le code) et de supprimer les autres.Après cela, exécutez le programme et il va certainement s'exécuter sans erreur.
Vous dire que votre
module-info.java
contientQui signifie qu'il déclare un module appelé
myModule
, pascom.pantech.myModule
. Le rappeler à partir du format de la commande:J'ai fait face à un même problème lorsque j'ai mis à jour la version de Java à 12.x. J'ai été l'exécution de mon projet par le biais de l'IDE Eclipse. Je ne suis pas sûr de savoir si cette erreur est causée par des problèmes de compatibilité.
Cependant, j'ai enlevé 12.x de mon système et installé 8.x et mon projet a commencé à bien fonctionner.
J'ai eu le même problème et j'ai résolu de cette façon:
mywork
.myWork
. Laissez-nous appel de la classeHelloWorld
.Noter: d'Abord, assurez-vous que Java fonctionne correctement à l'aide de la commande CMD dans cette façon, vous comprendrez que le problème est sur eclipse et pas sur JDK.