Nicolais Antwort ist korrekt in Bezug auf die Techniken, die notwendig sind, um ein ansonsten nicht exportiertes Paket vom %code% Modul oder von irgendeinem anderen zu exportieren anderes Modul.
Wenn Sie jedoch %code% verwenden möchten, verwenden Sie %code% , das vom Modul %code% exportiert wird. Wenn Sie Ihren Code für das unbenannte Modul kompilieren, müssen Sie nichts Besonderes in Bezug auf Module tun, um Zugriff darauf zu erhalten. Wenn Sie Code in einem Modul kompilieren, müssen Sie
hinzufügen %Vor%zu Ihrer %code% -Datei.
Um %code% zu verwenden, müssen Sie die reflective %code% -Technik verwenden, um Zugriff auf das Feld zu erhalten. Dies ist das gleiche wie in früheren JDK-Releases:
%Vor% Obwohl sich %code% im Modul %code% befindet, wird diese Technik in JDK 9 gemäß JEP 260
IDEA-EAP für JDK9-Entwicklungsexperimente verwenden.
Ich erhalte den folgenden Fehler -
%Vor%
Die Klassendefinition ist wie -
%Vor%Ich habe versucht, auch eine %code% -Datei innerhalb des mit der IDE erstellten Moduls mit den folgenden Anweisungen einzufügen:
%Vor%Die Verzeichnisstruktur sieht nun wie auf dem Bild dargestellt aus -
Die IDE spiegelt jedoch die %code% als unbenutzt wieder und wahrscheinlich ist das der Grund, dass ich %code% nicht wie oben beschrieben definieren kann.
Ich suche nach Hilfe, wie man die Modulinfo.java und / oder etwas anderes als das, was ich verpasst habe, richtig platziert.
Das Modul java.base exportiert das Paket %code% , daher ist der Typ %code% nicht zugänglich - als Konsequenz Kompilierung schlägt fehl.
Sie können das Paket exportieren, indem Sie die folgende Befehlszeilenoption hinzufügen:
%Vor%Das müssen Sie beim Kompilieren ( %code% ) und tun, wenn Sie den Code ausführen ( %code% ).