I will update the runtime builder to use the maven wagon code when that code is more mature. When that is done a runtime will include a set of jars and poms. If a jar is missing it will be downloaded automaticaly by the wagon code. The repository selection will also improve much with the wagon code too, so many different schemes for dependency downloading can be implemented.
Downloading new artifact is another issue because it would be hard to say which versjon a application can be run with. With this scenario it might actually be possible to only send the pom to the client and have a special runtime that downloads the dependencies.
But, these types of applications will not be ready untill maven 2.0 is released. After that you will see all cinds of application types using maven pop up all over the place :)
-- Trygvis
On Fri, 30 Jan 2004 13:00:32 +0100, Christian Andersson <[EMAIL PROTECTED]> wrote:
well that is one possibility, but that system (building an installation set which have everything) does not take advantage of the fact that I might already have some "libraries" (jar files) installed/downloaded
This is where maven comes in, since if I start te application from maven, maven will look in the "local" repository first for the files, if they are not there it will download them, so If a person already has some jar files (ofr the correct version) he does not have to download them and therfore saving perheps precious network bandwidth and time.
I know that webstart/jnlp can do this for me, IF I provide all the jar files requested (webstart cannot use unsigned jar files, nor jarfiles with different persons) and it would still not use already downloaded jar files from other programs.
lets say that I make applications for persons to use, and I use some gui-objects provided from some other company. with maven (provided that the other company has their jar-files versioned and on the web) I don't have to distribute their jar-file with my application since maven downloads it, I have to do that with an installer or if I use jnlp.
The installer version can do some "optimisations based on the plattform,, but IF I use that, I have to make several installers based on which plattforms I let my application run on, but wirh java, I want them to be run on any plattform.
I can also use the maven approach for starting the application from the init.d (if I use an unix type of plattform) or from a cron job. that will be hard with webstart/jnlp (but possible with an installer)
also with maven I can do some nifty update handling (similiar to webstart but more functional according to me) since all I have to do is to download the new project-xml file, stopp the application (maven stop) and then start it again (maven start) and it wpuld update ge application. webstart will update every time it starts the application since it checks the jnlp file, but an application that automaticly updates itself are usually discourraged by administrators (who knows what will be installed and when, I like to be able to controll when things gets updated).this is ofcourse also possible with an installer, but now it would be my application that would have to check for new versions etc, I have to "manually" build it inot my application.
So I see many benefits to providing a "maven-execution" system that has the basic maven reopsitory handling and a couple of goals (start,stop,restart,check,....) and these benefits are mainly not covered by an installer or webstart/jnlp)
/Christian
Trygve Laugst�l wrote:On Thu, 29 Jan 2004 11:36:43 -0500, Mark R. Diggory <[EMAIL PROTECTED]> wrote:
True, true. That is another option. Maybe theres others. I can imagine generating other OS specific package installers too. (RPM, bin, XPI, sh, InstallSheild, msi ...). A plugin or series of plugins devoted to building such installers using maven and its repository resources.
-Mark
There are several such plugins on the maven-plguins.sf.net site:
* http://maven-plugins.sourceforge.net/maven-runtime-builder-plugin * http://maven-plugins.sourceforge.net/maven-deb-plugin * http://maven-plugins.sourceforge.net/maven-rpm-plugin
The runtime plugin builds a runtime consisting of a lib catalog witha all dependencies and .bat and .sh shell wrappers.
-- Trygvis
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
-- Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
