Я создал проект Java с именем java9
для работы с модулями Java 9. У меня есть следующее module-info.java
:
module java9 {
...
}
Однако компилятор javac жалуется на цифру в имени моего модуля:
src\module-info.java:1: warning: [module] module name java9 should avoid terminal digits
module java9 {
^
И во время выполнения java тоже жалуется:
WARNING: Module name "java9" may soon be illegal
Кто-нибудь может объяснить, почему запрещаются конечные цифры? Что должны делать такие библиотеки, как commons-lang3
, чтобы избежать этого ограничения? Что делать, если у меня есть имя библиотеки, такое как base64
или sha3
?
Этот вопрос не содержат ответ на мой вопрос. Он отвечает, как избежать ошибки, но не объясняет, почему Java так ограничивает схему именования.