[英]Running bnd-structured app in IDEA on MacOS: Unresolved requirement: Import-Package: com.apple.eawt
我正在嘗試從IntelliJ IDEA運行Alloy (prkiens / markdown分支),以便可以使用IDEA調試器。 該項目使用bnd工作區,我從未處理過。
我在macOS(High Sierra)上運行。
我通過導入build.gradle將項目加載到IntelliJ中,並嘗試設置“ 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
在您的bnd.bnd
嘗試在底部添加:
Import-Package: \
!com.apple.eawt,\
*
在此處未列出依賴項通常會導致您描述的問題。
我認為有一個IDEA bnd插件,它不如Eclipse支持那么先進,但我認為它可以識別bnd文件。
不要以dist項目開頭,因為這只會將不同的項目聚合到一個JAR中進行分發,並包含創建MacOS pkg文件的代碼。 要運行GUI,只需調試SimpleGUI類。 bnd確保所有必需的JAR都是連續構建的(至少在Eclipse上)。
就是說,為自己節省一些工作,並首先通過bndtools熟悉Eclipse。 在Eclipse中,所有這些都自動運行。 一旦了解了它的工作原理,就可以輕松地將信息傳輸到IDEA。 (然后為其他人寫一個Wiki頁面!)
更新 Lorin在自述文件中添加的說明
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.