[Debian-med-packaging] openjfx usage in megan-ce
Andreas Tille
andreas at an3as.eu
Sat May 20 16:05:46 UTC 2017
Hi Felix,
On Sat, May 20, 2017 at 04:23:31PM +0200, Felix Natter wrote:
> > I had a first packaging centric look on megan-ce[1]. While there
> > are several problems I stumbled upon several compile errors like
>
> I cannot currently build this because my libjloda-java is at 0.0+20161018.
It is in experimental due to freeze policy.
> > [javac] /build/megan-ce-0.0+20170515/antbuild/src/megan/blastclient/BlastProgram.java:28: error: package javafx.geometry does not exist
> > [javac] import javafx.geometry.Insets;
> > [javac] ^
> > [javac] /build/megan-ce-0.0+20170515/antbuild/src/megan/blastclient/BlastProgram.java:29: error: package javafx.scene does not exist
> > [javac] import javafx.scene.Scene;
> > [javac] ^
> > [javac] /build/megan-ce-0.0+20170515/antbuild/src/megan/blastclient/BlastProgram.java:30: error: package javafx.scene.control does not exist
> > [javac] import javafx.scene.control.*;
> > [javac] ^
> > [javac] /build/megan-ce-0.0+20170515/antbuild/src/megan/blastclient/BlastProgram.java:31: error: package javafx.scene.layout does not exist
> > [javac] import javafx.scene.layout.BorderPane;
> > [javac] ^
> > [javac] /build/megan-ce-0.0+20170515/antbuild/src/megan/blastclient/BlastProgram.java:32: error: package javafx.scene.layout does not exist
> > [javac] import javafx.scene.layout.HBox;
> > [javac] ^
> >
> > To solve this I added libopenjfx-java Build-Dependency but this does not
> > seem to help. Any idea how I could fix this?
>
> You have put the wrong openjfx jar into debian/manifest:
>
> $ jar tf /usr/share/java/openjfx/lib/javafx-mx.jar | grep javafx.geometry
> <no output>
>
> $ jar tf /usr/share/java/openjfx/jre/lib/ext/jfxrt.jar | grep javafx.geometry
> [...]
> javafx/geometry/Insets.class
> [...]
Sounds convincing. :-)
> This simple patch should work:
>
> diff --git a/debian/manifest b/debian/manifest
> index 9b9c713..5b60c58 100644
> --- a/debian/manifest
> +++ b/debian/manifest
> @@ -1,3 +1,3 @@
> /usr/share/java/megan-ce.jar:
> Main-Class: megan-ce.MeganRun
> - Class-Path: /usr/share/java/jloda.jar /usr/share/java/colt.jar /usr/share/java/commons-math3.jar /usr/share/java/gson.jar /usr/share/java/openjfx/lib/javafx-mx.jar
> + Class-Path: /usr/share/java/jloda.jar /usr/share/java/colt.jar /usr/share/java/commons-math3.jar /usr/share/java/gson.jar /usr/share/java/openjfx/jre/lib/ext/jfxrt.jar
I've just pushed
$ git diff
diff --git a/debian/manifest b/debian/manifest
index 9b9c713..5b60c58 100644
--- a/debian/manifest
+++ b/debian/manifest
@@ -1,3 +1,3 @@
/usr/share/java/megan-ce.jar:
Main-Class: megan-ce.MeganRun
- Class-Path: /usr/share/java/jloda.jar /usr/share/java/colt.jar /usr/share/java/commons-math3.jar /usr/share/java/gson.jar /usr/share/java/openjfx/lib/javafx-mx.jar
+ Class-Path: /usr/share/java/jloda.jar /usr/share/java/colt.jar /usr/share/java/commons-math3.jar /usr/share/java/gson.jar /usr/share/java/openjfx/jre/lib/ext/jfxrt.jar
diff --git a/debian/rules b/debian/rules
index 33c5000..c912afc 100755
--- a/debian/rules
+++ b/debian/rules
@@ -7,7 +7,7 @@ export LC_ALL=C.UTF-8
DEBPKGNAME := $(shell dpkg-parsechangelog | awk '/^Source:/ {print $$2}')
DEBJAR := /usr/share/java
-CLASS_PATH := $(DEBJAR)/jloda.jar:$(DEBJAR)/colt.jar:$(DEBJAR)/commons-math3.jar:$(DEBJAR)/gson.jar:/usr/share/java/openjfx/lib/javafx-mx.jar
+CLASS_PATH := $(DEBJAR)/jloda.jar:$(DEBJAR)/colt.jar:$(DEBJAR)/commons-math3.jar:$(DEBJAR)/gson.jar:$(DEBJAR)/openjfx/jre/lib/ext/jfxrt.jar
%:
dh $@ --with javahelper
> If you need more help with this package, please tell me how to get
> libjloda-java (>= 0.0+20170502).
As I said this is in experimental. I also noticed that there is not
only trouble with javafx:
...
[javac] /build/megan-ce-0.0+20170515/antbuild/src/megan/biom/BiomData.java:21: error: package com.google.gson does not exist
[javac] import com.google.gson.Gson;
[javac] ^
[javac] /build/megan-ce-0.0+20170515/antbuild/src/megan/blastclient/BlastProgram.java:22: error: package javafx.application does not exist
[javac] import javafx.application.Application;
[javac] ^
[javac] /build/megan-ce-0.0+20170515/antbuild/src/megan/blastclient/BlastProgram.java:23: error: package javafx.beans.value does not exist
[javac] import javafx.beans.value.ChangeListener;
...
So Gson is also not found. :-(
Thanks for your help anyway
Andreas.
--
http://fam-tille.de
More information about the Debian-med-packaging
mailing list