Вы не можете использовать классы в пакете по умолчанию из именованного пакета. ( Технически вы можете, как показано в ответе от Sharique Abdullah через API отражения, классы , но из неназванного пространства имен не входят в область импорта в декларации импорта )
До J2SE 1.4 вы могли импортировать классы из пакета по умолчанию, используя синтаксис, подобный этому:
import Unfinished;
Это больше не разрешено . Таким образом, для доступа к классу пакетов по умолчанию изнутри упакованного класса требуется переместить класс пакета по умолчанию в собственный пакет.
Если у вас есть доступ к источнику, сгенерированному groovy, необходимо выполнить некоторую пост-обработку переместите файл в выделенный пакет и добавьте эту директиву «package» в начале.
Обновление 2014: ошибка 6975015 для JDK7 и JDK8 описать четную stricter запрет на импорт из неназванного пакета.
blockquote>
TypeName
должно быть каноническим именем типа класса, типа интерфейса, типа перечисления или типа аннотации. Этот тип должен быть либо членом именованного пакета, либо членом типа, у которого самый лексически закрытый тип является членом именованного пакета, или возникает ошибка времени компиляции.