Hi, I did a bit of digging. It seems like build/build.xml calls out to arduino-core/build.xml, which overrides the CLASSPATH to use arduino-core/lib/. We can add symlinks to the necessary dependencies there using jh_linkjars, by adding arduino-core/lib to debian/linkjars. (I think the existing entry for app/lib is still necessary since app/build.xml has a similar classpath setup.)
So this gets over the immediate problem of not finding the dependencies, but there are also a lot of missing dependencies. Most of these can be fixed by adding them to Build-Depends (which causes jh_linkjars to pick them up) but I hit one which doesn't seem to be package in Debian: the "MrBean" library, which is included as part of the jackson-modules-base package: https://github.com/FasterXML/jackson-modules-base (It seems like there's an older version of MrBean packaged as part of libjackson-json-java, but it's under org.codehaus.jackson rather than org.fasterxml.jackson.) I've attached my changes so far.
diff --git a/debian/control b/debian/control index d766846..8c7b42c 100644 --- a/debian/control +++ b/debian/control @@ -8,8 +8,12 @@ Build-Depends: debhelper (>= 8) , librxtx-java (>= 2.2pre2-3) , libjna-java, ant , libastyle-dev , libjssc-java , libjsch-java , libjmdns-java + , libbcpg-java, libsemver-java , libcommons-logging-java , libcommons-httpclient-java - , libcommons-exec-java + , libcommons-exec-java, libcommons-lang3-java, libcommons-codec-java + , libcommons-net-java, libcommons-compress-java + , libjackson-json-java, libjackson2-databind-java, libjackson2-core-java + , libjackson2-annotations-java , unzip Standards-Version: 3.9.5 Homepage: http://www.arduino.cc diff --git a/debian/linkjars b/debian/linkjars index 1a81e56..0b28cb7 100644 --- a/debian/linkjars +++ b/debian/linkjars @@ -1 +1,2 @@ app/lib +arduino-core/lib
Regards, Daf