Hello everyone.
I am currently porting Matúš Chochlík's OGLPlus C++ framework over to Java using of course, JOGL.
http://oglplus.orgI'm currently moving forward sucessfully in my implementation in this repository in case anyone's interested:
https://github.com/jjzazuet/jglWhat I'd like to mention in this discussion is that my project is using the Gradle build system and I'm finding that it has been a real help in regards to keeping my code clean and organized.
I have also created a provisional, personal Maven repository for JOGL's atomic jar dependencies and I though it would also be useful to have these dependencies on Maven Central, mostly for code minimalism's sake.
https://github.com/jjzazuet/mvn-repo/tree/master/repo/org/jogampWith this Gradle+Maven structure I've been able to narrow down JOGL's minimal jar dependencies (including natives) to the following (expressed of course, in a Gradle script) for Linux and Windows, x86 and x64:
compile 'org.jogamp.gluegen:gluegen-rt:2.0.2-rc12' compile 'org.jogamp.jogl:jogl-core:2.0.2-rc12' compile 'org.jogamp.jogl:jogl-gldesktop:2.0.2-rc12' compile 'org.jogamp.jogl:jogl-gldesktop-dbg:2.0.2-rc12' // for troubleshooting... compile 'org.jogamp.jogl:jogl-swt:2.0.2-rc12' // I also use the SWT Canvas classes. compile 'org.jogamp.nativewindow:nativewindow-core:2.0.2-rc12' if (isWindows) { compile 'org.jogamp.jogl:jogl-os-win:2.0.2-rc12' compile 'org.jogamp.nativewindow:nativewindow-os-win:2.0.2-rc12' if (is64bit) { compile 'org.jogamp.gluegen:gluegen-rt-natives-windows-amd64:2.0.2-rc12' compile 'org.jogamp.nativewindow:nativewindow-natives-windows-amd64:2.0.2-rc12' compile 'org.jogamp.jogl:jogl-natives-windows-amd64:2.0.2-rc12' } else if (is32bit) { compile 'org.jogamp.gluegen:gluegen-rt-natives-windows-i586:2.0.2-rc12' compile 'org.jogamp.nativewindow:nativewindow-natives-windows-i586:2.0.2-rc12' compile 'org.jogamp.jogl:jogl-natives-windows-i586:2.0.2-rc12' } else { throw new TaskExecutionException(unsupportedOs) } } else if (isLinux) { compile 'org.jogamp.jogl:jogl-os-x11:2.0.2-rc12' compile 'org.jogamp.nativewindow:nativewindow-os-x11:2.0.2-rc12' if (is64bit) { compile 'org.jogamp.gluegen:gluegen-rt-natives-linux-amd64:2.0.2-rc12' compile 'org.jogamp.nativewindow:nativewindow-natives-linux-amd64:2.0.2-rc12' compile 'org.jogamp.jogl:jogl-natives-linux-amd64:2.0.2-rc12' } else if (is32bit) { compile 'org.jogamp.gluegen:gluegen-rt-natives-linux-i586:2.0.2-rc12' compile 'org.jogamp.nativewindow:nativewindow-natives-linux-i586:2.0.2-rc12' compile 'org.jogamp.jogl:jogl-natives-linux-i586:2.0.2-rc12' } else { throw new TaskExecutionException(unsupportedOs) } } else { throw new TaskExecutionException(unsupportedOs) }
This setup produces an executable bundle of about 2MB for me, which is pretty slick in my opinion.
Does anyone think it would be useful to publish JOGL's atomic artifacts on Maven central as well?
Furthermore, would there be any added value if JOGAMP started using Gradle instead of ANT for compiling? I mean, I know of course it's not a trivial thing to do but, having used it in other very large projects in the past, I can definitely see more benefit to using a more recent build environment.
I thank you for your time and help!
Free forum by Nabble | Edit this page |