Package: javahelper Version: 0.43 Severity: normal Tags: patch jh_makepkg's template for Maven projects produces a debian/rules file that uses /usr/bin/mvn-debian whose maintainer does not support "production use". The comment at the top of /usr/bin/mvn-debian is correct: The template produced by jh_makepkg cannot even determine in a robust way if the build attempt by mvn-debian has been successful or not.
Yet, production use is exactly what is implied by templates for building Debian packages that are output by a script. In its current form, this template does more harm and frustration than good for unsuspecting users (DDs such as myself who just want to package some Maven-built software). On the other hand, supporting Maven seems to be a bigger, more complicated, task that is better served by mh_make from the maven-debian-helper package. I suggest removing maven "support" from jh_makepkg altogether; see my patch below. Cheers, -Hilko
commit 70ce2c9b74292543625eec6a52bf7d4d1d0af0a9 (HEAD, refs/heads/master) Author: Hilko Bengen <ben...@debian.org> Date: Mon Mar 18 22:58:26 2013 +0100 Remove Maven support Modified jh_makepkg diff --git a/jh_makepkg b/jh_makepkg index c83dfce..32e9eb7 100755 --- a/jh_makepkg +++ b/jh_makepkg @@ -1,7 +1,7 @@ #!/bin/bash -- # options: -# make, maven, ant, byhand +# make, ant, byhand # app, library # gcj @@ -28,7 +28,6 @@ syntax() echo -e "\t-a --app: This is an application package" echo -e "\tPick One:" echo -e "\t-t --ant: Builds with ant" - echo -e "\t-M --maven: Builds with maven2" echo -e "\t-k --makefiles: Builds with make" echo -e "\t-n --none: Create own buildsystem" echo -e "\tPick One:" @@ -44,7 +43,7 @@ syntax() exit 1 } -ARGS="p package m maintainer e email v upstream l library a app t ant k makefile n none g gcj o openjdk o7 openjdk7 M maven d default" parseargs "$@" +ARGS="p package m maintainer e email v upstream l library a app t ant k makefile n none g gcj o openjdk o7 openjdk7 d default" parseargs "$@" BUILDDIR="`pwd`" @@ -170,8 +169,6 @@ esac if [ -n "`getarg t ant`" ]; then BUILD="ant" -elif [ -n "`getarg M maven`" ]; then - BUILD="maven" elif [ -n "`getarg k makefiles`" ]; then BUILD="make" elif [ -n "`getarg n none`" ]; then @@ -181,7 +178,6 @@ else echo "Select:" echo -e "\t[A] Ant" echo -e "\t[M] Makefiles" - echo -e "\t[V] Maven" echo -e "\t[N] None---make one for me (Default)" echo -n "[Namv] $ " read t @@ -195,10 +191,6 @@ else BUILD="make" echo "Selected: Makefiles" ;; - "V"|"v") - BUILD="maven" - echo "Selected: Maven" - ;; *) BUILD="byhand" echo "Selected: No upstream build system" @@ -211,9 +203,6 @@ case $BUILD in "ant") DEPENDS="$DEPENDS, ant" ;; - "maven") - DEPENDS="$DEPENDS, maven2, maven-debian-helper" - ;; "byhand") ;; esac @@ -354,15 +343,6 @@ END case $BUILD in "ant") ;; - "maven") - cat >> debian/rules <<END -override_dh_auto_build: - # Build the package - mvn-debian build -override_dh_auto_clean: - mvn-debian clean -END - ;; "make") ;; "byhand")