jh_build / maven build process
hi,
I am in the process of updating the libjsyntaxpane-java package.
The new version is built using maven ("mvn package") upstream.
In the current libjsyntaxpane-java build, the META-INF/** files do not
end up in jsyntaxpane.jar: e.g.:
META-INF/services/jsyntaxpane/syntaxkits/bashsyntaxkit/config.properties
is missing.
The current build system calls jh_build which does this:
find src/main/java -name *.java -and -type f -print0 | xargs -0 /usr/lib/jvm/default-java/bin/javac -cp :debian/_jh_build.jsyntaxpane -d debian/_jh_build.jsyntaxpane -source 1.5 -target 1.5
[...]
/usr/lib/jvm/default-java/bin/jar cfm /tmp/y/libjsyntaxpane-java/jsyntaxpane.jar ../_jh_manifest.jsyntaxpane jsyntaxpane
I tried to set JH_JAR_EXTRA=src/main/resources in debian/rules, but then
I get this directory structure in the jar:
src/main/resources/META-INF/services/jsyntaxpane/syntaxkits/bashsyntaxkit/config.properties
(the src/main/resources needs to be stripped off)
I can hack around the problem using this:
override_dh_install:
(cd src/main/resources && jar uf ../../../jsyntaxpane.jar META-INF)
dh_install
With this change, both packages depending on the new libjsyntaxpane-java
(umlet and freeplane) work. But is there a cleaner solution?
I also read here: http://wiki.debian.org/Java/Packaging that:
"jh_build is a very simple build system provided by javahelper for
packages which don't come with an upstream build system or come with a
broken one"
--> so shall I switch to maven-debian-helper for the package?
I tried to run "mh_make", but it seems the maven-jflex-plugin is
missing in debian :-/ => so maybe the solution above is ok?
Thanks and Best Regards,
--
Felix Natter
Reply to: