Message-ID: <1006204836.879.1425609450322.JavaMail.firstname.lastname@example.org> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_878_1035789174.1425609450322" ------=_Part_878_1035789174.1425609450322 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html
Purpose of this document is to consolidate ideas from Maven users for up= coming 2.1.=20
A plugin that replaces an executable jar's main method as listed in the = META-INF folder. The method could be replaced with a special class added to= the jar that is able to download enough Maven to get Maven running on that= machine and installed in the user folder. The POM that is inside the jar c= an then be used to locate that jars dependencies and install them into the = user's local repository. If maven is already installed, then it could simpl= y use the maven repository to contain its runtime set, and add all required= jars to the classpath right then. This would be similar functionality as t= he current assembly plugin, except that instead of packaging the Jar with o= ther Jars, it packages a Maven bootstrapper. (I am not very good with Wikis= , so if this needs to be reformatted, please do so.)=20
An alternative design could be:=20 =20
As each class on that thread is loaded the MavenClassLoader would be res= posible for checking the user's settings.xml for the repository location, o= r creating a settings.xml with defaults. Once the repository is located, it= will get local copies of the artifacts required for the dependency sets. I= f the dependencies are not there it can then go to the remote repositories = and download them to the local repo. If all of this is done better by first= installing enough of the Maven jars, then it should do that instead, and l= oad the dependencies that way.