I'm working on improving my karaf debian package https://github.com/steinarb/karaf-debian
I'm packaging karaf 4.1.4. Currently I'm trying to eliminate the jars that aren't built from source code in the karaf 4.1.4 source tar-ball (that's a requirement for becoming an official debian package. Non-built jars can be used at runtime. This means that there are two possibilities: get the jars from a debian package (preferred), and if that's not possible: download the jars from maven central during installation) In the lib/boot/ directory, the "foreign" jars were: -rw-r--r-- 1 sb sb 1440500 Dec 15 20:14 jna-4.5.0.jar -rw-r--r-- 1 sb sb 2324986 Dec 15 20:14 jna-platform-4.5.0.jar -rw-r--r-- 1 sb sb 475256 Dec 15 20:14 org.osgi.core-6.0.0.jar The plan was to: - Remove the files from lib/boot/ - Add debian package dependencies for the equivalent debian packages (libosgi-core-java, libjna-java, libjna-platform-java) - Add symlinks in lib/boot/ to the jar files installed by the debian packages With osgi core, everything went as expected: https://github.com/steinarb/karaf-debian/commit/d6e940d704c9a68910acde47be148c440bac260d With the jna-*.jar files removed I had the interesting observation that karaf booted fine without them and I was able to install one of my own karaf applications. So my questions are: was it expected that I would be able to boot without these jar files? When would one run into problems with missing jna-*.jar? When would one run into problems with the wrong version of the jna-*.jar files? (debian stable currently has jna-4.2.2.jar and testing and unstable has jna-4.5.1.jar)
