You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@wicket.apache.org by Martijn Dashorst <ma...@gmail.com> on 2007/03/22 02:02:25 UTC

Maven and releasing 1.3 disappointment after dissappointment

Guys,

I've almost given up on using maven for building a consistent release,
which is also properly signed.

Themain problem I run into:

Maven insists to rebuild/repackage everything on each invocation,
which invalidates any signature generated in an earlier invocation.
This is problematic because we need to build our JDK-1.4 branch using
JDK-1.4 and the rest using JDK-1.5

I am able to create the jars and deploy them to my repository, signed
and all using JDK-1.4. No problem.

Same goes for the JDK-1.5 projects.

I just can't run mvn assembly:assembly when the deploy has finished,
becuase it will create new jar files (even though they are already
there!) and thus invalidate any signature.

The only way out I see is to compile using JDK-1.4, and
package/assemble using JDK-1.5. Given that this is a legal only
release, I'll do that now, and we'll see how it stands up to the
tests.

Martijn

-- 
Learn Wicket at ApacheCon Europe: http://apachecon.com
Join the wicket community at irc.freenode.net: ##wicket
Wicket 1.2.5 will keep your server alive. Download Wicket now!
http://wicketframework.org

Re: Maven and releasing 1.3 disappointment after dissappointment

Posted by Eelco Hillenius <ee...@gmail.com>.
If it's too much pain to bend maven to our will, why not create a Ruby
script or something? Creating releases is something that only we have
to do...

Sorry this is so much of a pain Martijn, thanks for the effort,

Eelco


On 3/21/07, Martijn Dashorst <ma...@gmail.com> wrote:
> Anyhow, I'm creating and uploading as we speak, but the speed of p.a.o
> is not very quick, it takes about 1 hour to upload our 10 project jar
> files. So I'll be in bed (2:15am) and see what is available tomorrow.
>
> Martijn
>
> On 3/22/07, Martijn Dashorst <ma...@gmail.com> wrote:
> > The whole maven stack: each life cycle doesn't check if the required
> > artifacts are already available. The only reason it doesn't recompile
> > is because the java compiler itself is clever enough to notice no
> > changes between the source and classes directory.
> >
> > Everything else is done again, and again and again and again and
> > again. Where everything else is: generate javadoc, create source jar,,
> > javadoc jar, classes jar, sign them, upload them to the repo. If you
> > add a site generation to the mix, you'll have to generate the javadoc
> > twice, and if you have a unit test report, those will run again too.
> >
> > This is the reason why building a release takes a day.
> >
> > Martijn
> >
> > On 3/22/07, Igor Vaynberg <ig...@gmail.com> wrote:
> > > sounds like the assembly plugin needs to be fixed.
> > >
> > > -igor
> > >
> > >
> > > On 3/21/07, Martijn Dashorst <ma...@gmail.com> wrote:
> > > >
> > > > Guys,
> > > >
> > > > I've almost given up on using maven for building a consistent release,
> > > > which is also properly signed.
> > > >
> > > > Themain problem I run into:
> > > >
> > > > Maven insists to rebuild/repackage everything on each invocation,
> > > > which invalidates any signature generated in an earlier invocation.
> > > > This is problematic because we need to build our JDK-1.4 branch using
> > > > JDK-1.4 and the rest using JDK-1.5
> > > >
> > > > I am able to create the jars and deploy them to my repository, signed
> > > > and all using JDK-1.4. No problem.
> > > >
> > > > Same goes for the JDK-1.5 projects.
> > > >
> > > > I just can't run mvn assembly:assembly when the deploy has finished,
> > > > becuase it will create new jar files (even though they are already
> > > > there!) and thus invalidate any signature.
> > > >
> > > > The only way out I see is to compile using JDK-1.4, and
> > > > package/assemble using JDK-1.5. Given that this is a legal only
> > > > release, I'll do that now, and we'll see how it stands up to the
> > > > tests.
> > > >
> > > > Martijn
> > > >
> > > > --
> > > > Learn Wicket at ApacheCon Europe: http://apachecon.com
> > > > Join the wicket community at irc.freenode.net: ##wicket
> > > > Wicket 1.2.5 will keep your server alive. Download Wicket now!
> > > > http://wicketframework.org
> > > >
> > >
> >
> >
> > --
> > Learn Wicket at ApacheCon Europe: http://apachecon.com
> > Join the wicket community at irc.freenode.net: ##wicket
> > Wicket 1.2.5 will keep your server alive. Download Wicket now!
> > http://wicketframework.org
> >
>
>
> --
> Learn Wicket at ApacheCon Europe: http://apachecon.com
> Join the wicket community at irc.freenode.net: ##wicket
> Wicket 1.2.5 will keep your server alive. Download Wicket now!
> http://wicketframework.org
>

Re: Maven and releasing 1.3 disappointment after dissappointment

Posted by Martijn Dashorst <ma...@gmail.com>.
Anyhow, I'm creating and uploading as we speak, but the speed of p.a.o
is not very quick, it takes about 1 hour to upload our 10 project jar
files. So I'll be in bed (2:15am) and see what is available tomorrow.

Martijn

On 3/22/07, Martijn Dashorst <ma...@gmail.com> wrote:
> The whole maven stack: each life cycle doesn't check if the required
> artifacts are already available. The only reason it doesn't recompile
> is because the java compiler itself is clever enough to notice no
> changes between the source and classes directory.
>
> Everything else is done again, and again and again and again and
> again. Where everything else is: generate javadoc, create source jar,,
> javadoc jar, classes jar, sign them, upload them to the repo. If you
> add a site generation to the mix, you'll have to generate the javadoc
> twice, and if you have a unit test report, those will run again too.
>
> This is the reason why building a release takes a day.
>
> Martijn
>
> On 3/22/07, Igor Vaynberg <ig...@gmail.com> wrote:
> > sounds like the assembly plugin needs to be fixed.
> >
> > -igor
> >
> >
> > On 3/21/07, Martijn Dashorst <ma...@gmail.com> wrote:
> > >
> > > Guys,
> > >
> > > I've almost given up on using maven for building a consistent release,
> > > which is also properly signed.
> > >
> > > Themain problem I run into:
> > >
> > > Maven insists to rebuild/repackage everything on each invocation,
> > > which invalidates any signature generated in an earlier invocation.
> > > This is problematic because we need to build our JDK-1.4 branch using
> > > JDK-1.4 and the rest using JDK-1.5
> > >
> > > I am able to create the jars and deploy them to my repository, signed
> > > and all using JDK-1.4. No problem.
> > >
> > > Same goes for the JDK-1.5 projects.
> > >
> > > I just can't run mvn assembly:assembly when the deploy has finished,
> > > becuase it will create new jar files (even though they are already
> > > there!) and thus invalidate any signature.
> > >
> > > The only way out I see is to compile using JDK-1.4, and
> > > package/assemble using JDK-1.5. Given that this is a legal only
> > > release, I'll do that now, and we'll see how it stands up to the
> > > tests.
> > >
> > > Martijn
> > >
> > > --
> > > Learn Wicket at ApacheCon Europe: http://apachecon.com
> > > Join the wicket community at irc.freenode.net: ##wicket
> > > Wicket 1.2.5 will keep your server alive. Download Wicket now!
> > > http://wicketframework.org
> > >
> >
>
>
> --
> Learn Wicket at ApacheCon Europe: http://apachecon.com
> Join the wicket community at irc.freenode.net: ##wicket
> Wicket 1.2.5 will keep your server alive. Download Wicket now!
> http://wicketframework.org
>


-- 
Learn Wicket at ApacheCon Europe: http://apachecon.com
Join the wicket community at irc.freenode.net: ##wicket
Wicket 1.2.5 will keep your server alive. Download Wicket now!
http://wicketframework.org

Re: Maven and releasing 1.3 disappointment after dissappointment

Posted by Xavier Hanin <xa...@gmail.com>.
On 3/22/07, Jean-Baptiste Quenot <jb...@apache.org> wrote:
>
> * Martijn Dashorst:
>
> > OK, I  found out what the  problem with JDK-1.4 and  the profile
> > mismatch went wrong. In an attempt to force maven to build using
> > JDK1.4, I set  the java home and path to  JDK-1.4 in my shell. I
> > consider this to be a 2am syndrome.
> >
> > New attempt is under way.
>
> Tell me  if you need an  Ant+Ivy -based prototype for  building or
> releasing Wicket.  I'll be happy to share my experience on this.


I can help too on this subject if you need.

- Xavier

--
>      Jean-Baptiste Quenot
> aka  John Banana   Qwerty
> http://caraldi.com/jbq/
>

Re: Maven and releasing 1.3 disappointment after dissappointment

Posted by Jean-Baptiste Quenot <jb...@apache.org>.
* Martijn Dashorst:

> OK, I  found out what the  problem with JDK-1.4 and  the profile
> mismatch went wrong. In an attempt to force maven to build using
> JDK1.4, I set  the java home and path to  JDK-1.4 in my shell. I
> consider this to be a 2am syndrome.
>
> New attempt is under way.

Tell me  if you need an  Ant+Ivy -based prototype for  building or
releasing Wicket.  I'll be happy to share my experience on this.
-- 
     Jean-Baptiste Quenot
aka  John Banana   Qwerty
http://caraldi.com/jbq/

Re: Maven and releasing 1.3 disappointment after dissappointment

Posted by Martijn Dashorst <ma...@gmail.com>.
OK, I found out what the problem with JDK-1.4 and the profile mismatch
went wrong. In an attempt to force maven to build using JDK1.4, I set
the java home and path to JDK-1.4 in my shell. I consider this to be a
2am syndrome.

New attempt is under way.

Martijn

On 3/22/07, Martijn Dashorst <ma...@gmail.com> wrote:
> On 3/22/07, Gwyn Evans <gw...@gmail.com> wrote:
> > Is that anything that "assembly:single"[1] might help with?  I'm not
> > overly expectant, but just wanted to check you'd seen it?
>
> I tried to do a mvn deploy assembly:assembly before I went to bed last
> night, but it only performed the dark arts on the JDK-1.4 profile (the
> mvn runs using jdk-1.5, and should default to the all profile).
>
> So my current setup would be:
>
> mvn4 deploy -Dgpg.passphrase=foobar
> mvn deploy -Dgpg.passphrase=foobar
> mvn package  assembly:assembly
>
> Problem is that the package phase of the last command recreates all
> jars, thus invalidating the signatures. I'm not alone with this
> problem (I mailed the user@maven list), so I have to search for an
> alternative.
>
> One could be:
>
> mvn4 package
> mvn package
> mvn deploy assembly:assembly -Dgpg.passphrase=foobar
>
> which creates the jar files using JDK-1.5 jar, instead of JDK-1.4 jar,
> but I don't think *that* would constitute a problem.
>
> This is the last thing I tried to perform before going to bed, but it
> didn't do the java 1.5 projects. I'll start it up one last time and if
> that fails, we should look for alternatives.
>
> > Failing that, how feasible would it be to tie things together with a
> > custome script?  Ant, sh, python/jython, etc...
>
> Problem is the dependency resolving. The current module set in the
> maven assembly discovers and includes the spring, junit, logging etc.
> libraries. If we don't want to ship those, things are looking better.
> Then it would be an Ant zip target to create the distribution.
>
> Part of the appeal of a binary distribution is that you can start
> working with the set and don't have to go on a dependency hunt.
>
> Martijn
>
> --
> Learn Wicket at ApacheCon Europe: http://apachecon.com
> Join the wicket community at irc.freenode.net: ##wicket
> Wicket 1.2.5 will keep your server alive. Download Wicket now!
> http://wicketframework.org
>


-- 
Learn Wicket at ApacheCon Europe: http://apachecon.com
Join the wicket community at irc.freenode.net: ##wicket
Wicket 1.2.5 will keep your server alive. Download Wicket now!
http://wicketframework.org

Re: Maven and releasing 1.3 disappointment after dissappointment

Posted by Martijn Dashorst <ma...@gmail.com>.
On 3/22/07, Gwyn Evans <gw...@gmail.com> wrote:
> Is that anything that "assembly:single"[1] might help with?  I'm not
> overly expectant, but just wanted to check you'd seen it?

I tried to do a mvn deploy assembly:assembly before I went to bed last
night, but it only performed the dark arts on the JDK-1.4 profile (the
mvn runs using jdk-1.5, and should default to the all profile).

So my current setup would be:

mvn4 deploy -Dgpg.passphrase=foobar
mvn deploy -Dgpg.passphrase=foobar
mvn package  assembly:assembly

Problem is that the package phase of the last command recreates all
jars, thus invalidating the signatures. I'm not alone with this
problem (I mailed the user@maven list), so I have to search for an
alternative.

One could be:

mvn4 package
mvn package
mvn deploy assembly:assembly -Dgpg.passphrase=foobar

which creates the jar files using JDK-1.5 jar, instead of JDK-1.4 jar,
but I don't think *that* would constitute a problem.

This is the last thing I tried to perform before going to bed, but it
didn't do the java 1.5 projects. I'll start it up one last time and if
that fails, we should look for alternatives.

> Failing that, how feasible would it be to tie things together with a
> custome script?  Ant, sh, python/jython, etc...

Problem is the dependency resolving. The current module set in the
maven assembly discovers and includes the spring, junit, logging etc.
libraries. If we don't want to ship those, things are looking better.
Then it would be an Ant zip target to create the distribution.

Part of the appeal of a binary distribution is that you can start
working with the set and don't have to go on a dependency hunt.

Martijn

-- 
Learn Wicket at ApacheCon Europe: http://apachecon.com
Join the wicket community at irc.freenode.net: ##wicket
Wicket 1.2.5 will keep your server alive. Download Wicket now!
http://wicketframework.org

Re: Maven and releasing 1.3 disappointment after dissappointment

Posted by Gwyn Evans <gw...@gmail.com>.
Is that anything that "assembly:single"[1] might help with?  I'm not
overly expectant, but just wanted to check you'd seen it?

Failing that, how feasible would it be to tie things together with a
custome script?  Ant, sh, python/jython, etc...

/Gwyn
[1] http://maven.apache.org/plugins/maven-assembly-plugin/single-mojo.html

On 22/03/07, Martijn Dashorst <ma...@gmail.com> wrote:
> The whole maven stack: each life cycle doesn't check if the required
> artifacts are already available. The only reason it doesn't recompile
> is because the java compiler itself is clever enough to notice no
> changes between the source and classes directory.
>
> Everything else is done again, and again and again and again and
> again. Where everything else is: generate javadoc, create source jar,,
> javadoc jar, classes jar, sign them, upload them to the repo. If you
> add a site generation to the mix, you'll have to generate the javadoc
> twice, and if you have a unit test report, those will run again too.
>
> This is the reason why building a release takes a day.
>
> Martijn
>
> On 3/22/07, Igor Vaynberg <ig...@gmail.com> wrote:
> > sounds like the assembly plugin needs to be fixed.
> >
> > -igor
> >
> >
> > On 3/21/07, Martijn Dashorst <ma...@gmail.com> wrote:
> > >
> > > Guys,
> > >
> > > I've almost given up on using maven for building a consistent release,
> > > which is also properly signed.
> > >
> > > Themain problem I run into:
> > >
> > > Maven insists to rebuild/repackage everything on each invocation,
> > > which invalidates any signature generated in an earlier invocation.
> > > This is problematic because we need to build our JDK-1.4 branch using
> > > JDK-1.4 and the rest using JDK-1.5
> > >
> > > I am able to create the jars and deploy them to my repository, signed
> > > and all using JDK-1.4. No problem.
> > >
> > > Same goes for the JDK-1.5 projects.
> > >
> > > I just can't run mvn assembly:assembly when the deploy has finished,
> > > becuase it will create new jar files (even though they are already
> > > there!) and thus invalidate any signature.
> > >
> > > The only way out I see is to compile using JDK-1.4, and
> > > package/assemble using JDK-1.5. Given that this is a legal only
> > > release, I'll do that now, and we'll see how it stands up to the
> > > tests.
> > >
> > > Martijn

-- 
Download Wicket 1.2.5 now! - http://wicketframework.org

Re: Maven and releasing 1.3 disappointment after dissappointment

Posted by Martijn Dashorst <ma...@gmail.com>.
The whole maven stack: each life cycle doesn't check if the required
artifacts are already available. The only reason it doesn't recompile
is because the java compiler itself is clever enough to notice no
changes between the source and classes directory.

Everything else is done again, and again and again and again and
again. Where everything else is: generate javadoc, create source jar,,
javadoc jar, classes jar, sign them, upload them to the repo. If you
add a site generation to the mix, you'll have to generate the javadoc
twice, and if you have a unit test report, those will run again too.

This is the reason why building a release takes a day.

Martijn

On 3/22/07, Igor Vaynberg <ig...@gmail.com> wrote:
> sounds like the assembly plugin needs to be fixed.
>
> -igor
>
>
> On 3/21/07, Martijn Dashorst <ma...@gmail.com> wrote:
> >
> > Guys,
> >
> > I've almost given up on using maven for building a consistent release,
> > which is also properly signed.
> >
> > Themain problem I run into:
> >
> > Maven insists to rebuild/repackage everything on each invocation,
> > which invalidates any signature generated in an earlier invocation.
> > This is problematic because we need to build our JDK-1.4 branch using
> > JDK-1.4 and the rest using JDK-1.5
> >
> > I am able to create the jars and deploy them to my repository, signed
> > and all using JDK-1.4. No problem.
> >
> > Same goes for the JDK-1.5 projects.
> >
> > I just can't run mvn assembly:assembly when the deploy has finished,
> > becuase it will create new jar files (even though they are already
> > there!) and thus invalidate any signature.
> >
> > The only way out I see is to compile using JDK-1.4, and
> > package/assemble using JDK-1.5. Given that this is a legal only
> > release, I'll do that now, and we'll see how it stands up to the
> > tests.
> >
> > Martijn
> >
> > --
> > Learn Wicket at ApacheCon Europe: http://apachecon.com
> > Join the wicket community at irc.freenode.net: ##wicket
> > Wicket 1.2.5 will keep your server alive. Download Wicket now!
> > http://wicketframework.org
> >
>


-- 
Learn Wicket at ApacheCon Europe: http://apachecon.com
Join the wicket community at irc.freenode.net: ##wicket
Wicket 1.2.5 will keep your server alive. Download Wicket now!
http://wicketframework.org

Re: Maven and releasing 1.3 disappointment after dissappointment

Posted by Igor Vaynberg <ig...@gmail.com>.
sounds like the assembly plugin needs to be fixed.

-igor


On 3/21/07, Martijn Dashorst <ma...@gmail.com> wrote:
>
> Guys,
>
> I've almost given up on using maven for building a consistent release,
> which is also properly signed.
>
> Themain problem I run into:
>
> Maven insists to rebuild/repackage everything on each invocation,
> which invalidates any signature generated in an earlier invocation.
> This is problematic because we need to build our JDK-1.4 branch using
> JDK-1.4 and the rest using JDK-1.5
>
> I am able to create the jars and deploy them to my repository, signed
> and all using JDK-1.4. No problem.
>
> Same goes for the JDK-1.5 projects.
>
> I just can't run mvn assembly:assembly when the deploy has finished,
> becuase it will create new jar files (even though they are already
> there!) and thus invalidate any signature.
>
> The only way out I see is to compile using JDK-1.4, and
> package/assemble using JDK-1.5. Given that this is a legal only
> release, I'll do that now, and we'll see how it stands up to the
> tests.
>
> Martijn
>
> --
> Learn Wicket at ApacheCon Europe: http://apachecon.com
> Join the wicket community at irc.freenode.net: ##wicket
> Wicket 1.2.5 will keep your server alive. Download Wicket now!
> http://wicketframework.org
>