Hello,
I have a problem to implement JOGL!
I think, the problem based on the natives, because all tests inside of my bundle with the classes
that are referencing the JOGL-classes are running! I read a lot of posts and tutorials about this topic.
But nothing helps me, because I cannot resolve the JOGL classes outside oft he bundle.
I reference the bundles from io7m. (com.io7m.bundles.org.jogamp.jogl/jocl/joal; version=2.3.2)
They are probably OSGI bundles. They have native libs e.g. in a „natives/windows-amd64/“ path.
(built with "https://github.com/io7m/org.jogamp" project)
First, I got:
Unable to resolve <<INITIAL>> version=null:
missing requirement com.xy.application
-> Unable to resolve com.xy.application version=1.0.0.201711241047:
missing requirement com.jogamp.opengl.awt; version=[2.3.0,3.0.0)
-> Unable to resolve com.io7m.bundles.org.jogamp.jogl version=2.3.2:
missing requirement |
(&(osgi.native.osname=Linux)(osgi.native.processor=x86-64))
(&(osgi.native.osname=Linux)(osgi.native.processor=x86-64))
…
After I played with the backlist and and the „-runsystemcapabilities: ${native_capability}“ command, I get (every time???):
Unable to resolve <<INITIAL>> version=null:
missing requirement com.xy.application
-> Unable to resolve com.xy.application version=1.0.0.201711241047:
missing requirement com.jogamp.common.util]
BUT! My big problem is, that the resolving process is a big black box for me!!!
(That's the reason why I post it in the bndtools forum and not in a jogl forum)
How can I get a better look on that what happens at the resolving process?
Are the „activate“ methods of the bundles called by resolving?
So that I can include something like my own native lib resolver?
Can someone helps me???
Kind regards
Arvid
--
You received this message because you are subscribed to the Google Groups "bndtools-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bndtools-user...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
-> Unable to resolve com.io7m.bundles.org.jogamp.jogl version=2.3.2:missing requirement |(&(osgi.native.osname=Linux)(osgi.native.processor=x86-64))(&(osgi.native.osname=Linux)(osgi.native.processor=x86-64))
(&(osgi.native.osname=Linux) …
What I know or mine to know:1) Mutually referencing native libraries are a bigger problem in Linux as in Windows. I think that's not the case here. Correct?
2) Normally, the native files are unpacked into a temporary directory via a gluegen process. Correct?
3) There is a problem with OSGI! This native files are not found, because each bundle has its own class loader. Basically?
4) In my understanding, the io7m bundles are full fledged osgi bundles, Correct?
5) What about: "-runsystemcapabilities: ${native_capability}" Is this correct?Is this macro automatically set by the system or is it just a variable that I have to define myself?
And one last question: Is the whole story with OSGI (bndtools) and JOGL in itself a problematic thing,or am I just having an understanding problem. How did others solve this successfully?
Kind regards
Arvid
Kind regards
Arvid