I imported my eclipse plugin project in to eclipse luna.
In project all plugins are showing compile time error. Error is org.eclipse.swt is missing.
Eclipse luna has only org.eclipse.e4.swt plugin.
how to import org.eclipse.swt plugin in eclipse luna?
Please help me.
Note : My project developed in eclipse helios IDE.
following MAINFEST.MF
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %Bundle-Name.0
Bundle-SymbolicName: com.chinna.cim.smash;singleton:=true
Bundle-Version: 4.0.2
Bundle-Activator: com.chinna.cim.smash.SMASHPlugin
Bundle-Vendor: %Bundle-Vendor.0
Bundle-Localization: plugin
Eclipse-ExtensibleAPI: true
Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime,
org.eclipse.core.resources,
org.eclipse.ui.ide,
org.eclipse.ui.forms,
org.eclipse.ui.editors,
org.eclipse.jface.text,
com.ami.megarac.utils
Bundle-ActivationPolicy: lazy
Bundle-ClassPath: patch.jar,
com.ami.megrac.utils manifest file
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Utils Plug-in
Bundle-SymbolicName: com.ami.megarac.utils;singleton:=true
Bundle-Version: 4.0.2
Bundle-Activator: com.ami.megarac.utils.UtilsPlugin
Bundle-Vendor: American Megatrends Inc
Eclipse-ExtensibleAPI: true
Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime,
org.eclipse.core.filesystem,
org.eclipse.ui.console,
org.eclipse.core.resources,
org.eclipse.core.resources,
google.api.translate,
org.eclipse.ui.forms,
com.ami.megarac.MegaRACDevStudio,
org.eclipse.ui.ide,
org.eclipse.jface.text,
org.eclipse.ui.editors,
org.eclipse.cdt.core,
org.eclipse.compare
Export-Package: com.ami.megarac.utils,
com.ami.megarac.utils.cdt,
com.ami.megarac.utils.console,
com.ami.megarac.utils.copyright,
com.ami.megarac.utils.file,
com.ami.megarac.utils.filesystem,
com.ami.megarac.utils.ini.parser,
com.ami.megarac.utils.ini.texteditor,
com.ami.megarac.utils.jobs,
com.ami.megarac.utils.localize,
com.ami.megarac.utils.localize.actions;
uses:="com.ami.megarac.utils.localize.wizards,
org.eclipse.jface.operation,
org.eclipse.core.runtime,
org.eclipse.ui,
org.eclipse.jface.action,
com.ami.megarac.utils.localize.model,
org.eclipse.core.resources,
org.eclipse.jface.viewers,
org.eclipse.swt.widgets",
com.ami.megarac.utils.localize.builder;
uses:="org.eclipse.core.runtime,
com.ami.megarac.utils.localize.model,
org.eclipse.core.resources,
org.eclipse.swt.widgets,
org.w3c.dom,
org.xml.sax.helpers,
org.xml.sax",
com.ami.megarac.utils.localize.dialogs,
com.ami.megarac.utils.localize.model,
com.ami.megarac.utils.localize.wizards,
com.ami.megarac.utils.mapmodel,
com.ami.megarac.utils.mvc,
com.ami.megarac.utils.resources,
com.ami.megarac.utils.resources.compare,
com.ami.megarac.utils.translator,
com.ami.megarac.utils.translator.input,
com.ami.megarac.utils.ui.forms.custom,
com.ami.megarac.utils.ui.forms.events,
com.ami.megarac.utils.ui.forms.model,
com.ami.megarac.utils.ui.forms.part,
com.ami.megarac.utils.ui.forms.part.controls,
com.ami.megarac.utils.ui.forms.transfer,
com.ami.megarac.utils.xml,
com.memetix.mst,
jboolexpr,
org.json,
org.json.simple,
org.json.simple.parser
Bundle-ActivationPolicy: lazy
Bundle-ClassPath: patch.jar,
lib/microsoft-translator-java-api-0.6.2-jar-with-dependencies.jar,
.,
lib/jboolexpr-1.2.jar,
lib/org.json.jar
Related
Upgraded Kotlin from 1.5 to 1.8 today: build fails in JDK 17 due to:
java.lang.reflect.InaccessibleObjectException: Unable to make field protected java.io.OutputStream java.io.FilterOutputStream.out accessible: module java.base does not "opens java.io" to unnamed module #2ba9f986
at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354)
at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
at java.base/java.lang.reflect.Field.checkCanSetAccessible(Field.java:178)
at java.base/java.lang.reflect.Field.setAccessible(Field.java:172)
at com.intellij.util.io.IOUtil.syncStream(IOUtil.java:217)
tried to add the following to my Maven configuration:
<plugin>
<artifactId>kotlin-maven-plugin</artifactId>
<groupId>org.jetbrains.kotlin</groupId>
<version>${kotlin.version}</version>
<configuration>
<jvmTarget>${java.version}</jvmTarget>
<args>
<arg>"--add-opens java.base/java.io=ALL-UNNAMED"</arg>
</args>
</configuration>
</plugin>
but the problem is still there.
Official documentation does not seem to provide any info on this. Online search did not find much, apart from something about Gradle
Is there any Maven-plugin configuration to fix it? (ie build Kotlin 1.8 on JDK 17) or is that not supported?
For our Kotlin project build with Maven, We have the following file .mvn/jvm.config in the project folder. The content should be as follows:
--add-opens=java.base/java.lang=ALL-UNNAMED
--add-opens=java.base/java.io=ALL-UNNAMED
I'am working on a RCP project which is currently running on Eclipse Mars(4.5) version. I need to migrate the project to oxygen version. But when i imported the project to workspace and run the application there were lot errors related to plugins. I tried Add-required option in .product file, but still many errors exists. Do any one have idea to how to correctly migrate the project to Oxygen version?
Below i have pasted one of the errors. I require cdt and birt plugin in project so have have already installed latest version of both. For cdt i tried old version also but that didn't work.
Log:
!ENTRY com.contiautomotive.ertools.compare 4 0 2020-06-18 20:44:23.330
!MESSAGE FrameworkEvent ERROR
!STACK 0
org.osgi.framework.BundleException: Could not resolve module: com.contiautomotive.ertools.compare [4]
Unresolved requirement: Require-Bundle: com.contiautomotive.ertools.login
-> Bundle-SymbolicName: com.contiautomotive.ertools.login; bundle-version="6.35.0.qualifier"; singleton:="true"
com.contiautomotive.ertools.login [18]
Unresolved requirement: Require-Bundle: com.contiautomotive.ertools.data
-> Bundle-SymbolicName: com.contiautomotive.ertools.data; bundle-version="6.35.0.qualifier"; singleton:="true"
com.contiautomotive.ertools.data [7]
Unresolved requirement: Require-Bundle: com.contiautomotive.ertools.codegen
-> Bundle-SymbolicName: com.contiautomotive.ertools.codegen; bundle-version="6.35.0.qualifier"; singleton:="true"
com.contiautomotive.ertools.codegen [3]
Unresolved requirement: Require-Bundle: com.contiautomotive.ertools.cm
-> Bundle-SymbolicName: com.contiautomotive.ertools.cm; bundle-version="6.35.0.qualifier"; singleton:="true"
com.contiautomotive.ertools.cm [2]
Unresolved requirement: Require-Bundle: com.contiautomotive.ertools.main
-> Bundle-SymbolicName: com.contiautomotive.ertools.main; bundle-version="6.35.0.qualifier"; singleton:="true"
com.contiautomotive.ertools.main [220]
Unresolved requirement: Require-Bundle: org.eclipse.help.webapp
-> Bundle-SymbolicName: org.eclipse.help.webapp; bundle-version="3.9.1.v20170816-0843"; singleton:="true"
org.eclipse.help.webapp [184]
Unresolved requirement: Require-Bundle: org.eclipse.help.base; bundle-version="[4.0.0,5.0.0)"
-> Bundle-SymbolicName: org.eclipse.help.base; bundle-version="4.2.153.v20180330-0640"; singleton:="true"
org.eclipse.help.base [182]
Unresolved requirement: Require-Bundle: org.apache.lucene.analyzers-common; bundle-version="[6.1.0,7.0.0)"
Unresolved requirement: Require-Bundle: org.eclipse.help.base
-> Bundle-SymbolicName: org.eclipse.help.base; bundle-version="4.2.153.v20180330-0640"; singleton:="true"
Unresolved requirement: Require-Bundle: org.eclipse.help.ui
-> Bundle-SymbolicName: org.eclipse.help.ui; bundle-version="4.1.0.v20170311-0931"; singleton:="true"
org.eclipse.help.ui [183]
Unresolved requirement: Require-Bundle: org.eclipse.help.base; bundle-version="[4.0.0,5.0.0)"; visibility:="reexport"
-> Bundle-SymbolicName: org.eclipse.help.base; bundle-version="4.2.153.v20180330-0640"; singleton:="true"
Unresolved requirement: Require-Bundle: com.contiautomotive.ertools.cm
-> Bundle-SymbolicName: com.contiautomotive.ertools.cm; bundle-version="6.35.0.qualifier"; singleton:="true"
Unresolved requirement: Require-Bundle: com.contiautomotive.ertools.main
-> Bundle-SymbolicName: com.contiautomotive.ertools.main; bundle-version="6.35.0.qualifier"; singleton:="true"
Unresolved requirement: Require-Bundle: com.continental.plm.codesizeparser
-> Bundle-SymbolicName: com.continental.plm.codesizeparser; bundle-version="1.2.0.qualifier"; singleton:="true"
com.continental.plm.codesizeparser [40]
Unresolved requirement: Require-Bundle: org.eclipse.cdt.core
-> Bundle-SymbolicName: org.eclipse.cdt.core; bundle-version="6.4.0.201802261533"; singleton:="true"
org.eclipse.cdt.core [100]
Unresolved requirement: Require-Bundle: com.google.gson
Unresolved requirement: Require-Bundle: com.contiautomotive.ertools.main
-> Bundle-SymbolicName: com.contiautomotive.ertools.main; bundle-version="6.35.0.qualifier"; singleton:="true"
Unresolved requirement: Require-Bundle: com.contiautomotive.ertools.migrateereleasezip
-> Bundle-SymbolicName: com.contiautomotive.ertools.migrateereleasezip; bundle-version="6.35.0.qualifier"; singleton:="true"
com.contiautomotive.ertools.migrateereleasezip [25]
Unresolved requirement: Require-Bundle: com.contiautomotive.ertools.data
-> Bundle-SymbolicName: com.contiautomotive.ertools.data; bundle-version="6.35.0.qualifier"; singleton:="true"
Unresolved requirement: Require-Bundle: com.contiautomotive.ertools.main
-> Bundle-SymbolicName: com.contiautomotive.ertools.main; bundle-version="6.35.0.qualifier"; singleton:="true"
Unresolved requirement: Require-Bundle: com.contiautomotive.ertools.cm
-> Bundle-SymbolicName: com.contiautomotive.ertools.cm; bundle-version="6.35.0.qualifier"; singleton:="true"
Unresolved requirement: Require-Bundle: com.contiautomotive.ertools.cm
-> Bundle-SymbolicName: com.contiautomotive.ertools.cm; bundle-version="6.35.0.qualifier"; singleton:="true"
Unresolved requirement: Require-Bundle: com.contiautomotive.ertools.data
-> Bundle-SymbolicName: com.contiautomotive.ertools.data; bundle-version="6.35.0.qualifier"; singleton:="true"
Unresolved requirement: Require-Bundle: com.contiautomotive.ertools.cm
-> Bundle-SymbolicName: com.contiautomotive.ertools.cm; bundle-version="6.35.0.qualifier"; singleton:="true"
Unresolved requirement: Require-Bundle: com.contiautomotive.ertools.main
-> Bundle-SymbolicName: com.contiautomotive.ertools.main; bundle-version="6.35.0.qualifier"; singleton:="true"
at org.eclipse.osgi.container.Module.start(Module.java:444)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1634)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1613)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1585)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1528)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)
You need to work through the chains of unresolved requirements to see what the issue is. Check that the listed plug-ins are actually being included in the build. The list of plug-ins changes between releases.
In what you show one issue is org.apache.lucene.analyzers-common. This is new in Eclipse Oxygen so it looks like you need to update the list of plug-ins being included in the build.
If you are using a .product file use the 'Add Required' button to add any missing required plug-in. Note that using a feature based build rather than plug-in based deals with this much more easily.
I'm using Xtext and have several plugins.
One is called harpo.plugin. In its Manifest.MF file we have
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Plugin
Bundle-SymbolicName: harpo.plugin;singleton:=true
Bundle-Version: 1.0.0.qualifier
Export-Package: harpo.plugin;uses:="org.eclipse.xtext,org.eclipse.xtext.common.types,com.google.inject",
harpo.plugin.editor;uses:="org.eclipse.emf.ecore,org.eclipse.emf.common.util",
[... much omitted ... ]
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: org.apache.log4j,
org.eclipse.jface.viewers,
org.eclipse.ui
Bundle-ActivationPolicy: lazy
Now a second plugin called harpo.plugin.ui depends on harpo.plugin. Its Manifest.MF looks like this
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Ui
Bundle-SymbolicName: harpo.plugin.ui;singleton:=true
Bundle-Version: 1.0.0.qualifier
Bundle-Activator: harpo.plugin.ui.internal.EditorActivator
Export-Package: harpo.plugin.ui,
harpo.plugin.ui.contentassist,
harpo.plugin.ui.contentassist.antlr,
harpo.plugin.ui.internal,
harpo.plugin.ui.quickfix
Require-Bundle: harpo.plugin;bundle-version="1.0.0",
[...much omitted...]
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: org.apache.log4j
Bundle-ActivationPolicy: lazy
Now when I compile the latter plugin, all the java files that depend on classes defined in harpo.plugin.editor have errors Type can not be resolved.
My question: What could cause these errors?
If I add the harpo.plugin project to the "Build path" of harpo.plugin.ui project, all compiles. But I shouldn't have to do that, right? In fact I probably shouldn't do that, right?
I updated my IBM MobileFirst Platform Studio to the newest version 7.0.0.00-20150402-2001 via Eclipse > Help > Check for Updates. With the result that MobileFirst is no longer running. I am missing the MFPF special Run commands, in “About Eclipse” MobileFirst is missing, and .metadata.log contains tons of errors, starting with
org.osgi.framework.BundleException: Could not resolve module: com.ibm.imp.worklight.core [668]
Unresolved requirement: Require-Bundle: com.worklight.worklight-shared-common; bundle-version="7.0.0"
-> Bundle-SymbolicName: com.worklight.worklight-shared-common; bundle-version="7.0.0.00-20150402-2001"; singleton:="true"
com.worklight.worklight-shared-common [689]
Unresolved requirement: Require-Bundle: com.worklight.worklight-3rd-parties; bundle-version="7.0.0"
-> Bundle-SymbolicName: com.worklight.worklight-3rd-parties; bundle-version="7.0.0.00-20150402-2001"; singleton:="true"
com.worklight.worklight-3rd-parties [685]
Unresolved requirement: Import-Package: org.bouncycastle145.jce.provider
-> Export-Package: org.bouncycastle145.jce.provider; bundle-version="7.0.0.00-20150402-2001"; bundle-symbolic-name="com.worklight.worklight-3rd-parties"; version="1.45.0"
Unresolved requirement: Import-Package: org.bouncycastle145.asn1
-> Export-Package: org.bouncycastle145.asn1; bundle-version="7.0.0.00-20150402-2001"; bundle-symbolic-name="com.worklight.worklight-3rd-parties"; version="1.45.0"
Unresolved requirement: Import-Package: com.google.gson.annotations; version="[2.3.0,3.0.0)"
-> Export-Package: com.google.gson.annotations; bundle-version="7.0.0.00-20150402-2001"; bundle-symbolic-name="com.worklight.worklight-3rd-parties"; version="2.3.1"
Unresolved requirement: Import-Package: org.bouncycastle145.x509
-> Export-Package: org.bouncycastle145.x509; bundle-version="7.0.0.00-20150402-2001"; bundle-symbolic-name="com.worklight.worklight-3rd-parties"; version="1.45.0"
Unresolved requirement: Import-Package: com.google.gson; version="[2.3.0,3.0.0)"
-> Export-Package: com.google.gson; bundle-version="7.0.0.00-20150402-2001"; bundle-symbolic-name="com.worklight.worklight-3rd-parties"; version="2.3.1"
Unresolved requirement: Import-Package: com.ibm.json.java
-> Export-Package: com.ibm.json.java; bundle-version="7.0.0.00-20150402-2001"; bundle-symbolic-name="com.worklight.worklight-3rd-parties"; version="7.0.0.00-20150402-2001"
Even the uninstall fails with No action found for: com.worklight.studio.plugin.Clean.
How can I fix my MFPF installation?
With fatal errors like the one described, while I am not sure why that happened, the best course of action is to use a fresh instance of Eclipse with a new workspace and then re-install the MFP Studio plug-in from the Eclipse Marketplace.
I have a set of Maven projects that I would like to migrate to SBT.
Tne only thing stopping me to do so, it's a project that is an Eclipse plugin, that has dependencies with Eclipse Birt.
The Tycho plugin for Maven, handles all the dependencies. This tool isn't available in SBT. I've found sbt-tycho plugin for SBT, but it looks like unmaintained (3 years with no activity).
Maybe I could build my Eclipse plugin with Maven, and the rest of projects with SBT. But don't know if this is possible.
Other alternative is to use Gradle, by means of the wuff plugin.
Related questions in StackOverflow:
How to build an eclipse plugin with sbt and sbt-osgi?
Can Apache Ivy handle dependencies in p2 repositories?
But I prefer SBT before Maven or Gradle, in order not to introduce yet another language besides Scala.
Is it possible to have all projects in SBT except the one that uses Tycho (Eclipse plugin)?. The Eclipse plugin project is a dependency of the main project, and it rarely changes.
Any ideas?
Update 1: additional information. Eclipse plugins use the p2 repository format for handling dependencies, instead of the standard Maven repository used for Gradle, Maven, Ivy and SBT. That's why special tools are needed. My custom Eclipse plugin has over 100 indirect p2 dependencies.
Update 2
pom.xml of my Eclipse plugin:
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>myCompany</groupId>
<artifactId>myPlugin</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
<properties>
<tycho.version>0.19.0</tycho.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<repositories>
<repository>
<id>eclipse</id>
<url>http://download.eclipse.org/releases/kepler</url>
<layout>p2</layout>
</repository>
<repository>
<id>babel</id>
<url>http://download.eclipse.org/technology/babel/update-site/R0.11.1/kepler</url>
<layout>p2</layout>
</repository>
<repository>
<id>logback</id>
<url>http://logback.qos.ch/p2/</url>
<layout>p2</layout>
</repository>
</repositories>
<build>
<plugins>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-maven-plugin</artifactId>
<version>${tycho.version}</version>
<extensions>true</extensions>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>target-platform-configuration</artifactId>
<version>${tycho.version}</version>
<configuration>
<resolver>p2</resolver>
<environments>
<environment>
<os>linux</os>
<ws>gtk</ws>
<arch>x86_64</arch>
</environment>
<environment>
<os>win32</os>
<ws>win32</ws>
<arch>x86</arch>
</environment>
</environments>
</configuration>
</plugin>
</plugins>
</build>
</project>
It appears that the support for Eclipse updatesite with OSGi bundles is already available in Ivy. It doesn't however mean that the resolver can be used directly in sbt (I have never read about it and seen it in use before so I might be mistaken).
There's a way to include any resolver of Ivy in sbt using externalIvySettings():
create the configuration files as you would for Maven (pom.xml) or Ivy
(ivy.xml and optionally ivysettings.xml). External configuration is
selected by using one of the following expressions.
There's Ivy settings (resolver configuration) with externalIvySettings and Ivy file (dependency configuration) with externalIvyFile.
My guess is that you might be quite successful leveraging the support. Just add externalIvySettings and/or externalIvyFile to build.sbt, and create ivy.xml in the top-level directory of the Eclipse plugin's project with a declaration of Ivy's Eclipse updatesite resolver.
You may want to explore the support with the following build.sbt:
externalIvySettings()
libraryDependencies += "bundle" % "org.eclipse.swt.cocoa.macosx.x86_64" % "3.100.1.v4234e"
Place ivysettings.xml in the project's top-level directory (alongside build.sbt):
<ivysettings>
<settings defaultResolver="chain"/>
<resolvers>
<chain name="chain">
<ibiblio name="central" m2compatible="true"/>
<updatesite name="eclipse-juno" url="http://download.eclipse.org/releases/juno" />
</chain>
</resolvers>
</ivysettings>
With the two files above I could update up to failing on some packages:
> update
[info] Updating {file:/Users/jacek/sandbox/eclipse-p2/}eclipse-p2...
:: loading settings :: file = /Users/jacek/sandbox/eclipse-p2/ivysettings.xml
[warn] module not found: package#org.eclipse.swt.accessibility2;[0.0.0,)
[warn] ==== central: tried
[warn] http://repo1.maven.org/maven2/package/org.eclipse.swt.accessibility2/[revision]/org.eclipse.swt.accessibility2-[revision].pom
[warn] -- artifact package#org.eclipse.swt.accessibility2;[0.0.0,)!org.eclipse.swt.accessibility2.jar:
[warn] http://repo1.maven.org/maven2/package/org.eclipse.swt.accessibility2/[revision]/org.eclipse.swt.accessibility2-[revision].jar
[warn] ==== eclipse-juno: tried
[warn] module not found: package#org.mozilla.xpcom;[0.0.0,)
[warn] ==== central: tried
[warn] http://repo1.maven.org/maven2/package/org.mozilla.xpcom/[revision]/org.mozilla.xpcom-[revision].pom
[warn] -- artifact package#org.mozilla.xpcom;[0.0.0,)!org.mozilla.xpcom.jar:
[warn] http://repo1.maven.org/maven2/package/org.mozilla.xpcom/[revision]/org.mozilla.xpcom-[revision].jar
[warn] ==== eclipse-juno: tried
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: package#org.eclipse.swt.accessibility2;[0.0.0,): not found
[warn] :: package#org.mozilla.xpcom;[0.0.0,): not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn]
[warn] Note: Unresolved dependencies path:
[warn] package:org.eclipse.swt.accessibility2:[0.0.0,)
[warn] +- bundle:org.eclipse.swt:[3.0.0,4.0.0)
[warn] +- bundle:org.eclipse.swt.cocoa.macosx.x86_64:3.100.1.v4234e (/Users/jacek/sandbox/eclipse-p2/build.sbt#L3-4)
[warn] +- default:eclipse-p2_2.10:0.1-SNAPSHOT
[warn] package:org.mozilla.xpcom:[0.0.0,)
[warn] +- bundle:org.eclipse.swt:[3.0.0,4.0.0)
[warn] +- bundle:org.eclipse.swt.cocoa.macosx.x86_64:3.100.1.v4234e (/Users/jacek/sandbox/eclipse-p2/build.sbt#L3-4)
[warn] +- default:eclipse-p2_2.10:0.1-SNAPSHOT
Another solution (I haven't tried yet) is to use the sbt-osgi-manager plugin, designed for this purpose. It is actively mantained.
I'll update this answer with my experiences.
UPDATE: it doesn't work for me in the first try.
The final solution is to use a standard Maven repository for the Birt plugins. This solution is good for the embedding the Birt runtime, but not for a complete RCP app.