GeoTools packaging
Packaging GeoTools requires a lot of dependencies, many of them that are not up to date, are not maven compatible or simply are not packaged.
What we need to package
These may have licence problem:
- JAI optional - Oracle license
- ImageIO optional - Oralce license
- ImageIO-ext Optional - Orace license
- DB2 Jdbc driver Optional - IBM license
- DB2 Express-C Optional - IBM license
Ignored dependencies
These packages are either not required by mh_make of against debian policies
- maven-source-plugin - 2.2.1
- maven-eclipse-plugin - 2.5
- wagon-webdav - 1.0-beta2 - 1.0.0 in Trusty
Ignore doc packages
- findbugs-maven-plugin - 2.1
Packages not available in Trusty
The first number is the version available, the second is the one needed. If there's only one number, it means it needs to be packaged.
- git-commit-id-plugin
- maven-jxr-plugin - nothing - 2.3
- exec-maven-plugin - 1.1.1 - 1.2
- javacc - 5.0 - 4.0
- jsr-275 - 1.0-beta2 (v0.9.1 packaged here https://launchpad.net/~jlarouche/+archive/ubuntu/java-testing/+packages which seems compatible)
- build-helper-maven-plugin 1.8 - null (??)
- vecmath - libvecmath-java - not maven - 1.5 (https://launchpad.net/~jlarouche/+archive/ubuntu/java-testing/+packages)
- jts - libjts-java - not maven - 1.13 (https://launchpad.net/~jlarouche/+archive/ubuntu/java-testing/+packages)
- easymockclassextension - 2.3
- xml-commons-resolver - 1.2
- commons-dbcp - libcommons-dbcp-java not-maven 1.4 - 1.4
- common(eclipse) - 2.6.0
- commons-pool - 1.6 - 1.5.4
- jgridshift - 1.0
- easymockclassextension - 2.3
- xml-commons-resolver - 1.13 (libxml-commons-resolver1.1 has 1.2. May be the right package)
- mockrunner - 0.3.6
- simple-jndi - 0.11.4.1
- jsqlparser - 0.3.14
- eastwood - 1.1.1-20090908
- groboutils-core - 5
- postgresql - 8.4 (might be able to up it to 9.3)
- ojdbc14 - 10.2.0.3.0 (Oracle, might not be possible to package)
- geodb - 0.7-RC2
- spatialite-jdbc - 3.7.2-2.4
- bridj - 0.6
- libgdal-java - 1.8.1 (Can probably update to 1.10/1.11)
- picontainer - 1.2
- miglayout - 3.7.4 - 3.7
- core.commands - 3.6.0.I20100512-1500
GeoTools Module Packaging
Since building GeoTools actually creates many .jar which are all GeoTools module which can be used independently, we can also package them separately.
Using Maven-Debian-Helper, not much needs to be done. Every module has its own pom.xml. They use a parent pom.xml where some dependencies version are set so you might have to look into it and set them in the module's pom.xml.
With that done, running mh_make should work fine.
The point of packaging modules individually was to try to get just enough to be able to build GeoServer and because apps don't necessarily need the 100+ GeoTools lib to work.