You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by Buntingster <bu...@gmail.com> on 2005/08/22 00:19:23 UTC
Standardized Maven Environment
We are looking at standardizing our builds on Maven. We will have one
server performing builds for our "official" artifacts. However, all of
our developers will also need to be able to build locally for their own
purposes. We will be setting up an internal repository for our
libraries, and we will also have need to write several custom plugins
for some of our business requirements.
We will initially be using maven 1 - while we are definitely considering
maven 2, politics do not allow us to use an unreleased project, and we
are in desperate need of the dependency management features provided by
maven. So, hopefully my solution (at least conceptually) can be applied
to both maven 1 and maven 2.
My question is this: is there any good way to be sure that my developers
are running in the same maven environment as our build server? By this
I mean primarily the plugins (and their versions) that are installed.
This becomes especially critical when we have internal plugins that will
be modified on a more frequent basis.
My current thought is to publish the info available in "maven -i" on a
central web server, and then write a custom plugin (update-maven-env)
that our developers can run that will retrieve this information and
retrieve and update the appropriate plugins.
I was wondering if anyone has any thoughts on this, if there is already
a solution out there? Any assistance would be greatly appreciated.
Thanks.
-Jared
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org
Re: Standardized Maven Environment
Posted by Brett Porter <br...@gmail.com>.
Hi,
We're planning to build something like this in to Maven2, or at least
document how it should be done. There are a few alternatives.
Your proposed solution sounds like a very good one.
Another common way is for them to check out their installation from
cvs/svn and have a plugin that updates that regularly for them.
Happy to discuss any further thoughts you have on this.
Cheers,
Brett
On 8/22/05, Buntingster <bu...@gmail.com> wrote:
> We are looking at standardizing our builds on Maven. We will have one
> server performing builds for our "official" artifacts. However, all of
> our developers will also need to be able to build locally for their own
> purposes. We will be setting up an internal repository for our
> libraries, and we will also have need to write several custom plugins
> for some of our business requirements.
>
> We will initially be using maven 1 - while we are definitely considering
> maven 2, politics do not allow us to use an unreleased project, and we
> are in desperate need of the dependency management features provided by
> maven. So, hopefully my solution (at least conceptually) can be applied
> to both maven 1 and maven 2.
>
> My question is this: is there any good way to be sure that my developers
> are running in the same maven environment as our build server? By this
> I mean primarily the plugins (and their versions) that are installed.
> This becomes especially critical when we have internal plugins that will
> be modified on a more frequent basis.
>
> My current thought is to publish the info available in "maven -i" on a
> central web server, and then write a custom plugin (update-maven-env)
> that our developers can run that will retrieve this information and
> retrieve and update the appropriate plugins.
>
> I was wondering if anyone has any thoughts on this, if there is already
> a solution out there? Any assistance would be greatly appreciated.
>
> Thanks.
>
> -Jared
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org
Re: Standardized Maven Environment
Posted by Thomas Van de Velde <th...@gmail.com>.
Sounds like a good tip & trick for mavenbook.org <http://mavenbook.org>
On 8/22/05, Trygve Laugstøl <tr...@codehaus.org> wrote:
>
> On Mon, Aug 22, 2005 at 02:21:31PM +0200, Thomas Van de Velde wrote:
> > Jared,
> >
> > I've used the solution mentioned by Brett on large projects and it works
> > well. I also place a project.xml and project.properties in the Maven
> cvs/svn
> > module that holds configuration data common to all applications on a
> > project. Applications then extend this project-level pom with
> <extends>${
> > maven.home}/project.xml</extends>
> >
> > I would be interested to hear how this issue is being addressed with M2.
> One
> > solution would be to have a small M2 core that is used to bootstrap your
> > project's POM, which extends a POM located on a web server. E.g.
> <extends>
> > http://mylocalserver/projectX/project.xml</extends> I believe this is a
> > feature request that has already been submitted for M1 but I am not sure
> how
> > this would work for associated project.properties files. With M2 this
> should
> > become simpler as all configuration data is stored in the POM. Please
> > correct me if I am wrong.
>
> In Maven 2 you have <parent> instead of <extends> like this:
>
> <parent>
> <groupId>my-group</groupId>
> <artifactId>my-parent</artifactId>
> <version>1.0</version>
> </parent>
>
> Which is a artifact which can be put in your normal Maven repository.
>
> --
> Trygve
>
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.1 (GNU/Linux)
>
> iD8DBQFDCcT44EbM92cyCUURAv7cAJ0fzSCLcx5q9bdlPkA/wT2sKJGlDQCeNCv2
> XX868RfFHFLPcx8eSs33p5c=
> =hOhl
> -----END PGP SIGNATURE-----
>
>
>
Re: Standardized Maven Environment
Posted by Trygve Laugstøl <tr...@codehaus.org>.
On Mon, Aug 22, 2005 at 02:21:31PM +0200, Thomas Van de Velde wrote:
> Jared,
>
> I've used the solution mentioned by Brett on large projects and it works
> well. I also place a project.xml and project.properties in the Maven cvs/svn
> module that holds configuration data common to all applications on a
> project. Applications then extend this project-level pom with <extends>${
> maven.home}/project.xml</extends>
>
> I would be interested to hear how this issue is being addressed with M2. One
> solution would be to have a small M2 core that is used to bootstrap your
> project's POM, which extends a POM located on a web server. E.g. <extends>
> http://mylocalserver/projectX/project.xml</extends> I believe this is a
> feature request that has already been submitted for M1 but I am not sure how
> this would work for associated project.properties files. With M2 this should
> become simpler as all configuration data is stored in the POM. Please
> correct me if I am wrong.
In Maven 2 you have <parent> instead of <extends> like this:
<parent>
<groupId>my-group</groupId>
<artifactId>my-parent</artifactId>
<version>1.0</version>
</parent>
Which is a artifact which can be put in your normal Maven repository.
--
Trygve
Re: Standardized Maven Environment
Posted by Thomas Van de Velde <th...@gmail.com>.
Jared,
I've used the solution mentioned by Brett on large projects and it works
well. I also place a project.xml and project.properties in the Maven cvs/svn
module that holds configuration data common to all applications on a
project. Applications then extend this project-level pom with <extends>${
maven.home}/project.xml</extends>
I would be interested to hear how this issue is being addressed with M2. One
solution would be to have a small M2 core that is used to bootstrap your
project's POM, which extends a POM located on a web server. E.g. <extends>
http://mylocalserver/projectX/project.xml</extends> I believe this is a
feature request that has already been submitted for M1 but I am not sure how
this would work for associated project.properties files. With M2 this should
become simpler as all configuration data is stored in the POM. Please
correct me if I am wrong.
Thomas
On 8/22/05, Buntingster <bu...@gmail.com> wrote:
>
> We are looking at standardizing our builds on Maven. We will have one
> server performing builds for our "official" artifacts. However, all of
> our developers will also need to be able to build locally for their own
> purposes. We will be setting up an internal repository for our
> libraries, and we will also have need to write several custom plugins
> for some of our business requirements.
>
> We will initially be using maven 1 - while we are definitely considering
> maven 2, politics do not allow us to use an unreleased project, and we
> are in desperate need of the dependency management features provided by
> maven. So, hopefully my solution (at least conceptually) can be applied
> to both maven 1 and maven 2.
>
> My question is this: is there any good way to be sure that my developers
> are running in the same maven environment as our build server? By this
> I mean primarily the plugins (and their versions) that are installed.
> This becomes especially critical when we have internal plugins that will
> be modified on a more frequent basis.
>
> My current thought is to publish the info available in "maven -i" on a
> central web server, and then write a custom plugin (update-maven-env)
> that our developers can run that will retrieve this information and
> retrieve and update the appropriate plugins.
>
> I was wondering if anyone has any thoughts on this, if there is already
> a solution out there? Any assistance would be greatly appreciated.
>
> Thanks.
>
> -Jared
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>