Модульная система Java 9
Я пытаюсь изучить новые возможности модуля java 9. Не думаю, что я правильно выполняю команду require / exports, потому что intelliJ выдает мне красный текст при импорте, если я не добавлю зависимости в project structure
окно, которое, я уверен, это неправильный путь. Ниже моя файловая структура
app
--src
----start
------main.java
----module-info.java
hello
--src
----hello
------Hello.java
----module-info.java
Это модуль-информация для app
:
module name {
requires hello;
}
Это модуль-информация для hello
:
module name {
exports hello;
}
1 ответ
Выбор name
поскольку имя для обоих модулей Java не является хорошей идеей (оно может не скомпилироваться, если вы попытаетесь запросить другой модуль Java с тем же именем).
Также кажется, что вы пытаетесь потребовать пакет hello
, но вы должны требовать другой модуль Java. По этой причине я рекомендую переписать module-info.java
файл в app
быть следующим:
module app {
requires hello;
}
И переписать module-info.java
файл в hello
быть следующим:
module hello {
exports hello;
}