module-info

___ tag123java ___ Java (nicht zu verwechseln mit JavaScript oder JScript oder JS) ist eine universelle objektorientierte Programmiersprache, die für die Verwendung in Verbindung mit der Java Virtual Machine (JVM) entwickelt wurde. "Java-Plattform" ist der Name für ein Computersystem, auf dem Tools zum Entwickeln und Ausführen von Java-Programmen installiert sind. Verwenden Sie dieses Tag für Fragen, die sich auf die Java-Programmiersprache oder Java-Plattform-Tools beziehen. ___ tag123java9 ___ Verwenden Sie dieses Tag für spezielle Fragen zu Java 9, Version 9 der Java-Plattform, die am 21. September 2017 veröffentlicht wurde. In den meisten Fällen sollten Sie auch das Java-Tag angeben. ___ qstnhdr ___ Es konnte kein Paket aus dem java.base-Modul exportiert werden ___ answer42576762 ___

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 .

    
___ tag123jigsaw ___ Project Jigsaw zielt darauf ab, ein Standardmodulsystem für die Java SE Plattform zu entwerfen und zu implementieren. Es ist derzeit darauf ausgerichtet, als Teil von Java 9 veröffentlicht zu werden. ___ tag123modulein ___ Wird für Modul-info.class-verwandte Abfragen verwendet, die seit Java 9 für die Moduldeklaration in Java verwendet werden. Dies würde meist mit Java-9 oder höher Tag gekoppelt werden. ___ tag123javamodule ___ Bezieht sich auf das Modul, wie es vom in Java9 eingeführten Modulsystem in Java definiert wurde. Daher wahrscheinlich mit Java9 oder höher Tag gekoppelt sein. ___ qstntxt ___

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.

    
___ answer42541096 ___

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% ).

    
___
2
Antworten

Es konnte kein Paket aus dem java.base-Modul exportiert werden

IDEA-EAP für JDK9-Entwicklungsexperimente verwenden. Ich erhalte den folgenden Fehler - %Vor% Die Klassendefinition ist wie - %Vor% Ich habe versucht, auch eine module-info.java -Datei innerhalb des mit der IDE erstellten Moduls...
01.03.2017, 17:57