Пакет java.awt доступен из более чем одного модуля : , java.desktop
Это происходит, например, когда javax.awt или javax.swing включен в .jar файлы.
Простейшим примером может быть следующий:
Код: Выделить всё
package test;
import javax.swing.JDialog;
public class Test {
public static void main(String[] args) {
new JDialog();
}
}
На другом компьютере с Eclipse 2018-09 это работает, если соответствие компилятору установлено на 10.
Я использую Eclipse 2019-03, на недавно установленном (в целях тестирования) Eclipse 2018-09. работает нормально. Почему?
Редактировать июнь 2020 г. (Решение)
Как правильно ответить Как было сказано, это ограничение было встроено в Java давным-давно и только недавно было навязано нам. Я столкнулся с этим во время миграции большого проекта с десятками зависимостей на Maven. Там были библиотеки примерно 2000 года! Существовали «метабиблиотеки», состоящие из нескольких библиотек, упакованных вместе.
Поэтому не было другого пути, кроме как определить, что еще нужно (в мусорку с остальным!), обновить библиотеки, нарушающие правила, или найти замену. для них. Это заняло у меня много-много часов.
В конце концов все получилось, и у нас появился хороший проект Maven, с которым можно работать.
Подробнее здесь: https://stackoverflow.com/questions/555 ... one-module
Мобильная версия