Replies: 4 comments 1 reply
-
Ha, glad to read, that it is not just me. I noticed this effect (long one-time loading of Eclipse-restart after a bndtools update) also in the past (see here). Since it just happens once after updating bndtools (or installing bndtools in a fresh eclipse) I did not really care, because it was fast afterwards. Anyway just wanted to mention this. |
Beta Was this translation helpful? Give feedback.
-
I have to admit that I'm a bit surprised that two versions of the bndlib are a problem.
I would prefer to not copy sources from other libraries into PDE for the usual reason.
In M2E we are using bndlib as well, but I'm also fine to update there as well as soon as possible. If you need some testing I can also try out the latest snapshot in conjunction with PDE and M2E next week. |
Beta Was this translation helpful? Give feedback.
-
Can you explain where we have a conflict? Actually one advantage of OSGi is using different version of the same lib in one runtime.
I noticed this not only with BND so actually I'm very often forced to use So it would really be good to check why the resolver needs to perform that slow here, we already import-package with a range so it should be quite clear to narrow down things. Maybe #775 can help the resolver already...
Why? PDE does not export BND as part of its API and BNDTools claims to not using PDE at all so I don't see where there is a chance for conflicts.
I would definitely vote against this. This complicates things a lot duplicates large jars (bndlib > 3 MB) and for the same reason we then must probably also embed biz.aQute.bnd.util and maybe others. Beside that the goal is to use bndlib on more places and this will further complicate things for no good reason (e.g. currently we would require to embedd BNDlib in pde.core **and pde.ui and both bundles won't be able to share any code)
No, m2e is also using bndlib and pde.ui as well see above. |
Beta Was this translation helpful? Give feedback.
-
OK, then we have no choice. |
Beta Was this translation helpful? Give feedback.
-
With #536 PDE now pulls in some version of
biz.aQute.bndlib
. This may cause some conflicts when installing later versions of BND tools that want/need to ship a newer version of this bundle.I noticed this while fixing bndtools/bnd#5783 in BND which was necessary to work around new split packages caused by eclipse-jdt/eclipse.jdt.ui#810. So I needed to build the current development branch of BND to test out my fix where I then install BND tools into my installation of the latest I-Build.
There I noticed that it took a really long time to restart Eclipse after installing the dev build of BND tools v7. It turns out that after installing my dev build of BND Tools there are now two versions of
biz.aQute.bndlib
:The resolver did manage to work out a valid resolution, without conflicts, but it took many minutes to do that. I also expect at some point the
biz.aQute.bndlib
version in a future release may end up not being compatible in some what which would then make it impossible to install without conflicts.Could we instead embed the necessary packages from
biz.aQute.bndlib
intoorg.eclipse.pde.core
such that it becomes an internal implementation detail? I thinkorg.eclipse.pde.core
is the only user ofbiz.aQute.bndlib
in the Eclipse project. If we did that then there is no risk of future releases of BND tools conflicting with our dependency onbiz.aQute.bndlib
Beta Was this translation helpful? Give feedback.
All reactions