Re: Getting Maven Into Main - What Next?
Paul Cager wrote:
Now that we are making progress with packaging Maven's
Build-Dependencies, I'm beginning to wonder what happens next. I've
noticed from the JavaCC packaging that it seems to be all right to
include a "bootstrap jar" in the upstream source. Is this right? I guess
to be valid:
* When building the package a new Jar must be built (from source)
that could replace the bootstrap Jar.
* There must be no licensing issues around distributing the bootstrap
If so then should we create the Maven package by bootstrapping?
* Maven build-depends on wagon, plexus, doxia etc.
* Create a local repository for Maven, e.g. debian/.m2/repository.
For each build-dependency create the appropriate directory structure
Use the install:install-file goal to properly install a file into a
* Copy (or symlink) the build-depends jars from /usr/share/java to
our repository. This should ensure that maven does not try to download
any dependencies. (I imagine maven also has an option to inhibit
downloads; it would be safest to set this, and/or set http_proxy).
It will not download stuff, but to be sure run with the -o flag.
I wonder if it would be feasible to make a LD preload thing that would
prevent all forms of external network communication that could be use to
make sure that the build isn't fetching stuff from the internet?
* Set "localRepository" to "debian/.m2/repository", and call maven's
bootstrap shell script. (this process is described in
I would just package all the binaries into a repository inside a tarball
and the Maven 2 source code and built it with Ant. Once you have a Maven
2 package you can start building all it's build dependencies and then
finally rebuild the Maven 2 "proper" again.
I will most likely be on IRC tonight if anyone want to chat on the
practical parts of building Maven.