Hello Daniel, You have done an excellent job here to bootstrap the build of Maven 3. I cannot think of anothwe way of doing it. It's a pity that Maven 3 requires so much bootstrapping, I have packaged Maven 2.2.2 and was very careful to avoid such bootstrapping. But it's a long exercise to convert a Maven build into an Ant build, even with the help of maven-ant-helper.
I have started to remove the need to use Maven for building some of those packages (currently plexus-compiler builds without Maven in the latest commit in Git). I'm also improving mh_make --ant (from maven-debian-helper) to assist the generation of all packaging files required to build and package a Maven project with Ant. It should be ready in a few days, then we can run this tool on the packages that you have bootstrapped and remove this circular build dependency on Maven. Your problem with maven-scm should also be fixed by fully converting the build of maven-scm to Ant, as there seem to be some internal build dependency that is not met by your simple build script. Ludovic On 07/01/2012 23:14, Daniel Schepler wrote: > In my overall pbuildd project, the idea is to bootstrap the Debian archive > from the package sources and a minimal starting chroot, using cycle breaker > scripts where necessary. As part of that project, I'm trying to figure out > how > one would bootstrap the Maven packages (and those of their dependencies which > use maven-debian-helper). So far I have a big long pseudocode script which > has gotten me a significant part of the way towards that goal. The idea is > to > make heavy use of maven-ant-helper, plus building just selected parts of > large > compound packages like wagon, doxia, etc. > > The questions I have right now are: > > 1. Is there some much simpler way to do this that I'm missing? > 2. When I get to maven-scm, I run into this build error -- this is a log > where > I tried adding "maven.test.skip=true" to debian/maven.properties in order to > verify that it's not a test skipping ahead in the dependency chain that's > causing this. > > ... > [INFO] > ------------------------------------------------------------------------ > [INFO] Building Maven SCM TFS Provider > [INFO] task-segment: [package] > [INFO] > ------------------------------------------------------------------------ > [INFO] [resources:resources {execution: default-resources}] > [WARNING] Using platform encoding (ANSI_X3.4-1968 actually) to copy filtered > resources, i.e. build is platform dependent! > [INFO] skip non existing resourceDirectory /tmp/maven-scm/maven-scm-1.3/maven- > scm-providers/maven-scm-provider-tfs/src/main/resources > [INFO] [compiler:compile {execution: default-compile}] > [INFO] Compiling 19 source files to /tmp/maven-scm/maven-scm-1.3/maven-scm- > providers/maven-scm-provider-tfs/target/classes > [INFO] [plexus:descriptor {execution: default}] > [INFO] Discovered 1 component descriptors(s) > [INFO] [resources:testResources {execution: default-testResources}] > [WARNING] Using platform encoding (ANSI_X3.4-1968 actually) to copy filtered > resources, i.e. build is platform dependent! > [INFO] skip non existing resourceDirectory /tmp/maven-scm/maven-scm-1.3/maven- > scm-providers/maven-scm-provider-tfs/src/test/resources > [INFO] [compiler:testCompile {execution: default-testCompile}] > [INFO] Not compiling test sources > [INFO] [surefire:test {execution: default-test}] > [INFO] Tests are skipped. > [INFO] [jar:jar {execution: default-jar}] > [INFO] Building jar: /tmp/maven-scm/maven-scm-1.3/maven-scm-providers/maven- > scm-provider-tfs/target/maven-scm-provider-tfs-1.3.jar > [INFO] > ------------------------------------------------------------------------ > [INFO] Building Maven SCM Standard Providers > [INFO] task-segment: [package] > [INFO] > ------------------------------------------------------------------------ > [INFO] [site:attach-descriptor {execution: default-attach-descriptor}] > [INFO] > ------------------------------------------------------------------------ > [INFO] Building Maven SCM Client > [INFO] task-segment: [package] > [INFO] > ------------------------------------------------------------------------ > [INFO] [plexus:merge-descriptors {execution: merge}] > [INFO] [resources:resources {execution: default-resources}] > [WARNING] Using platform encoding (ANSI_X3.4-1968 actually) to copy filtered > resources, i.e. build is platform dependent! > [INFO] Copying 1 resource > [INFO] [compiler:compile {execution: default-compile}] > [INFO] Compiling 1 source file to /tmp/maven-scm/maven-scm-1.3/maven-scm- > client/target/classes > [INFO] [resources:testResources {execution: default-testResources}] > [WARNING] Using platform encoding (ANSI_X3.4-1968 actually) to copy filtered > resources, i.e. build is platform dependent! > [INFO] skip non existing resourceDirectory /tmp/maven-scm/maven-scm-1.3/maven- > scm-client/src/test/resources > [INFO] [compiler:testCompile {execution: default-testCompile}] > [INFO] Not compiling test sources > [INFO] [surefire:test {execution: default-test}] > [INFO] Tests are skipped. > [INFO] [jar:jar {execution: default-jar}] > [INFO] Building jar: /tmp/maven-scm/maven-scm-1.3/maven-scm- > client/target/maven-scm-client-1.3.jar > [INFO] > ------------------------------------------------------------------------ > [INFO] Building Maven SCM Plugin > [INFO] task-segment: [package] > [INFO] > ------------------------------------------------------------------------ > [INFO] > ------------------------------------------------------------------------ > [ERROR] BUILD ERROR > [INFO] > ------------------------------------------------------------------------ > [INFO] Failed to resolve artifact. > > Missing: > ---------- > 1) org.apache.maven.scm:maven-scm-providers-standard:pom:1.3 > Path to dependency: > 1) org.apache.maven.plugins:maven-scm-plugin:maven-plugin:1.3 > 2) org.apache.maven.scm:maven-scm-providers-standard:pom:1.3 > > ---------- > 1 required artifact is missing. > > for artifact: > org.apache.maven.plugins:maven-scm-plugin:maven-plugin:1.3 > > from the specified remote repositories: > central (http://repo1.maven.org/maven2) > > > > NOTE: Maven is executing in offline mode. Any artifacts not already in your > local > repository will be inaccessible. > > > [INFO] > ------------------------------------------------------------------------ > [INFO] For more information, run Maven with the -e switch > [INFO] > ------------------------------------------------------------------------ > [INFO] Total time: 1 minute 4 seconds > [INFO] Finished at: Sat Jan 07 21:46:54 UTC 2012 > [INFO] Final Memory: 93M/411M > [INFO] > ------------------------------------------------------------------------ > make: *** [mvn-build] Error 1 > dpkg-buildpackage: error: debian/rules build gave error exit status 2 > > In a brief look at the pom.xml files, I couldn't easily see what's causing > this > error. > > The pseudoscript so far is attached, in case you're interested. > > > > __ > This is the maintainer address of Debian's Java team > <http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-maintainers>. > Please use > debian-j...@lists.debian.org for discussions and questions. __ This is the maintainer address of Debian's Java team <http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-maintainers>. Please use debian-j...@lists.debian.org for discussions and questions.