cayenne-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrus Adamchik <and...@objectstyle.org>
Subject Re: Build failed in Jenkins: cayenne-master » derby,jdk-1.8.0,Ubuntu #74
Date Sun, 09 Nov 2014 12:10:43 GMT
We need "clean". It removes "target" dirs within the modules.

> In jenkins we should not need to clean

We absolutely need "clean". It removes "target" dirs in each module, and hence this is the
only way to remove the previous build.

> because the repository is always reset for each build.

When you start with an empty local repo, Maven downloads all dependencies from a remote repo.
I've never seen it actually happen, except for dependencies introduced by a given commit.
So my assumption that the local repo is reused (and it is actually not affected by "clean"
anyways).

> Do we need to install so that artifacts built early on are used by other modules built
later?

In a multi-module project there's a concept of "reactor" that would resolve modules built
in the same run without going to the repo. So unlike "clean", "install" may actually be superfluous.
It could be that "package" is the minimum phase required in a multi-module build, and my preference
for "install" is traced back to the old days of Maven being half-broken :)

Andrus



> On Nov 9, 2014, at 12:44 PM, Aristedes Maniatis <ari@maniatis.org> wrote:
> 
> On 8/11/2014 11:04pm, Andrus Adamchik wrote:
>> I noticed our build config was using "mvn -e test". This is not enough to guarantee
a stable build across various types of changes, and is a reason *all* builds were failing
lately, not just some and occsaionally. E.g. the example below runs tests that are no longer
in Git!
> 
> That was probably me who put the "mvn test" in there. I've left maven far behind for
all my other work (gradle makes a million times more sense to me), so I'm curiousas to the
difference. In jenkins we should not need to clean because the repository is always reset
for each build. But I'm guessing that 'install' is very different to 'test'. Do we need to
install so that artifacts built early on are used by other modules built later?
> 
> -- 
> -------------------------->
> Aristedes Maniatis
> GPG fingerprint CBFB 84B4 738D 4E87 5E5C  5EFA EF6A 7D2E 3E49 102A
> 


Mime
View raw message