[Debian-med-packaging] openjfx usage in megan-ce
andreas at an3as.eu
Sat May 20 19:07:16 UTC 2017
thanks for your very helpful hints.
On Sat, May 20, 2017 at 07:36:42PM +0200, Felix Natter wrote:
> It seems the CLASS_PATH in debian/rules is not used during build, we
> need to patch "build.classpath" in antbuild/build.xml, like this (last
> --- a/antbuild/build.xml
> +++ b/antbuild/build.xml
> @@ -21,7 +21,10 @@
> <path id="build.classpath">
> <fileset dir="/usr/share/java/" includes="jloda.jar"/>
> + <fileset dir="/usr/share/java/" includes="colt.jar"/>
> + <fileset dir="/usr/share/java/" includes="commons-math3.jar"/>
> + <fileset dir="/usr/share/java/" includes="gson.jar"/>
> + <fileset dir="/usr/share/java/openjfx/jre/lib/ext" includes="jfxrt.jar"/>
> <!-- init -->
OK, applied this (and some more according to your hints) which was
helpful so far.
> (or, as an alternative, succeed in making build.xml use CLASS_PATH)
Hmmm, any hint from debian-java list? While the patch works its less
convenient to maintain compared to CLASS_PATH.
> Note that you need to include all these libraries in debian/manifest
> too, otherwise the program will fail during runtime (which might not be
> noticed until a particular functionality is used).
Thanks for the hint - I've tried to keep this in sync.
> gson and javax are found, now that we change the correct classpath, but
> several other libraries are used:
> build1.log:53: [javac] import malt.align.SimpleAligner4DNA;
> build1.log:56: [javac] import malt.util.MurmurHash3;
> --> there is only 'smalt' in Debian?
No, that's really malt. The problem seems to be that malt needs
megan-ce and megan-ce needs malt classes. :-( No idea how I could
resolve this circular dependency. :-((
> build1.log:76: [javac] import Jama.Matrix;
> --> libjama-java / /usr/share/java/jama.jar
> build1.log:106: [javac] import com.install4j.api.update.UpdateDescriptorEntry;
> --> probably not in Debian?
I'll checkout whather I can find the source. Upstream provides some JAR
> build1.log:115: [javac] import org.controlsfx.control.spreadsheet.SpreadsheetView;
> build1.log:144: [javac] import org.controlsfx.control.spreadsheet.GridBase;
> build1.log:147: [javac] import org.controlsfx.control.spreadsheet.SpreadsheetCell;
> build1.log:150: [javac] import org.controlsfx.control.spreadsheet.SpreadsheetCellType;
> build1.log:168: [javac] import org.controlsfx.control.spreadsheet.*;
> build1.log:181: [javac] import org.controlsfx.control.spreadsheet.SpreadsheetColumn;
> build1.log:184: [javac] import org.controlsfx.control.spreadsheet.SpreadsheetColumn;
> --> ?
I probably need to package http://fxexperience.com/controlsfx/
> build1.log:138: [javac] import contrasts.Contrasts;
> --> ?
That JAR is in upstream source:
Need to checkout where to find the source.
> build1.log:141: [javac] import org.apache.commons.codec.binary.Base64;
> --> libcommons-codec-java / /usr/share/java/commons-codec.jar
> build1.log:190: [javac] import org.springframework.http.HttpEntity;
> build1.log:193: [javac] import org.springframework.http.HttpHeaders;
> build1.log:196: [javac] import org.springframework.http.HttpMethod;
> build1.log:199: [javac] import org.springframework.http.ResponseEntity;
> build1.log:202: [javac] import org.springframework.web.client.RestTemplate;
> libspring-web-java / /usr/share/java/spring3-web.jar
Added as well.
> Cheers and Best Regards,
Thanks a lot so far
More information about the Debian-med-packaging