Запуск приложения с bnd-структурой в IDEA на MacOS: Нерешенное требование: Import-Package: com.apple.eawt

Я пытаюсь запустить Сплав (ветка prkiens / markdown) из IntelliJ IDEA, чтобы я мог использовать отладчик IDEA. В этом проекте используется рабочее пространство сгибать, с которым я никогда раньше не сталкивался.

Я работаю на macOS (High Sierra).

Я загрузил проект в IntelliJ, импортировав build.gradle, и попытался настроить конфигурацию Bnd OSGi для его запуска. Я не уверен, какой файл использовать в качестве дескриптора запуска Bnd. Лучше всего было использовать org.alloytools.alloy.dist / bnd.bnd. Когда я попытался запустить его, я получил следующую ошибку:

! could not resolve the bundles: [org.alloytools.alloy.dist-5.0.0.201803130320 org.osgi.framework.BundleException: Could not resolve module: org.alloytools.alloy.dist [1]
  Unresolved requirement: Import-Package: com.apple.eawt

Что я здесь делаю не так?

Обратите внимание, что сборка проекта с использованием Gradle отлично работает:

./gradlew build
java -jar  org.alloytools.alloy.dist/target/org.alloytools.alloy.dist.jar
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
2
0
195
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

В вашем bnd.bnd попробуйте добавить внизу:

Import-Package: \
!com.apple.eawt,\
*

Отсутствие указанной там зависимости часто может вызвать описанную вами проблему.

Думаю, это неправильный ответ, может, вы захотите его удалить?

Peter Kriens 16.03.2018 08:56
Ответ принят как подходящий

Я думаю, что есть Плагин IDEA bnd. Он не такой продвинутый, как поддержка Eclipse, но я думаю, что он распознает файлы bnd.

Не начинайте с проекта dist, поскольку он просто объединяет различные проекты в JAR для распространения и содержит код для создания файла pkg MacOS. Чтобы запустить графический интерфейс, просто выполните отладку класса SimpleGUI. bnd гарантирует, что все необходимые JAR-файлы создаются непрерывно (по крайней мере, на Eclipse).

Тем не менее, сэкономьте немного времени и сначала познакомьтесь с Eclipse с помощью bndtools. В Eclipse все работает автоматически. Как только вы поймете, как это работает, вы сможете легко передать эту информацию в IDEA. (И напишите вики-страницу для других!)

Обновлять Лорин добавил инструкцию на Прочти меня

Моя проблема заключалась в том, что я импортировал его как проект Gradle, а не как проект Bnd.

Lorin Hochstein 16.03.2018 04:28

Другие вопросы по теме