Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Efxclipse/BndtoolsSupport"
(→Bndtools Support: added link to google-groups discussion) |
(updated repository information) |
||
Line 16: | Line 16: | ||
[https://bugs.eclipse.org/bugs/show_bug.cgi?id=450811 Bug 450811] | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=450811 Bug 450811] | ||
− | + | We use now repoindex to create our repository meta info. | |
+ | To include it in our build process we created a little maven plugin which wraps [http://search.maven.org/#artifactdetails|biz.aQute.bnd|org.osgi.impl.bundle.repoindex.cli|2.1.5|jar biz.aQute.bnd:org.osgi.impl.bundle.repoindex.cli:2.1.5] | ||
− | + | [http://search.maven.org/#artifactdetails|at.bestsolution|bindex-maven-plugin|1.0.0|maven-plugin at.bestsolution:bindex-maven-plugin:1.0.0] | |
− | + | [https://github.com/BestSolution-at/bindex-maven-plugin source] | |
− | + | ||
− | + | ||
− | + | ||
+ | The index can be found here: [http://download.eclipse.org/efxclipse/runtime-nightly/site/repository.xml.gz runtime-nightly/site/repository.xml.gz] | ||
== tooling == | == tooling == |
Latest revision as of 05:51, 10 March 2015
Contents
Bndtools Support
This page is used to collect information about how to support bndtools.
Contributions are welcome ;-)
This is our root bug for the support: Bug 414418
Google groups discussion: bndtools-users
Build system
runtime repository
bndtools uses repositories to access bundles (similar to pde's target platform). It seems that bnd has no p2 repository plugin, so we need to provide a bnd compatible repository to access the efxclipse runtime
We use now repoindex to create our repository meta info. To include it in our build process we created a little maven plugin which wraps biz.aQute.bnd:org.osgi.impl.bundle.repoindex.cli:2.1.5
at.bestsolution:bindex-maven-plugin:1.0.0 source
The index can be found here: runtime-nightly/site/repository.xml.gz
tooling
wizards
we need some new project wizards to create
- e4fx bnd project
- fx bnd project
- bnd cnf project
template project
Im working on a template project for the wizards. You can find it on github: e4fx-bnd. It is already possible to launch the demo application.
automatic classpath management
in pde we add some dependencies automatically to the classpath.
How do we solve this for bndtools?
launching
bndtools comes with its own launcher. It uses .bndrun files to describe the osgi setup to be launched. we need to generate a default .bndrun file, so that users can instantly start their applications.
Issues
resolver issue with org.eclipse.osgi from our own repo
Our runtime repository provides everything needed to launch an e4fx application. However if bndtools tries to resolve with our bundled equinox implementation it always fails.
Unable to resolve <<INITIAL>> version=null: missing requirement Require[osgi.identity]{}{filter=(osgi.identity=dummy)} [caused by: Unable to resolve dummy version=0.0.0: missing requirement Require[osgi.wiring.package]{}{filter=(osgi.wiring.package=javafx.application)} [caused by: Unable to resolve org.eclipse.fx.javafx version=2.2.0.201411100602: missing requirement Require[osgi.ee]{}{filter=(|(osgi.ee=JavaSE-1.7))}]]
If it uses org.eclipse.osgi from bundlehub it succeds. Both are the same version.. I suspect the index to be at fault...
developing e4fx applications with bndtools
Issues
bnd development cycle and e4
bndtools rebuilds on every change the resulting bundle and updates it in the running osgi container. It seems that the e4 platform cannot handle dynamic changes correctly and the application will somehow fail afterwards.