Whilst that's true of the maven documentation, when you start digging into how
it's used during artifact resolution it acts as an override for a repository's
update policy.
(from 3.3.9 release)
It ends up set on
org.apache.maven.artifact.repository.RepositoryRequest#isForceUpdate()
/**
* Indicates whether remote repositories should be re-checked for updated
artifacts/metadata regardless of their
* configured update policy.
*
* @return {@code true} if remote repositories should be re-checked for
updated artifacts/metadata, {@code false}
* otherwise.
*/
boolean isForceUpdate();
/**
* Enables/disabled forced checks for updated artifacts/metadata on remote
repositories.
*
* @param forceUpdate {@code true} to forcibly check the remote
repositories for updated artifacts/metadata, {@code
* false} to use the update policy configured on each repository.
* @return This request, never {@code null}.
*/
RepositoryRequest setForceUpdate( boolean forceUpdate );
Or in the case where you end up in aether, it sets your repository session to
always update:
org.apache.maven.internal.aether.DefaultRepositorySystemSessionFactory:114
else if ( request.isUpdateSnapshots() )
{
session.setUpdatePolicy( RepositoryPolicy.UPDATE_POLICY_ALWAYS );
}
The net result is the same.
Though I admit that I wouldn't expect this to necessarily re-download source
code unless the metadata was corrupt/missing, it certainly has more meaning
that just update snapshots.
Quite possibly a bug in maven-core then.
| Adam Mitchell | Java Software Architect | Tel: +44 (0)207 633 3570 | Mobile:
| Skype: | www.playtech.com
This communication contains information which is privileged and confidential
and is exclusively intended only for the individual or entity named above
(recipient(s)). If you are not the intended recipient(s) or the person
responsible for delivering it to the intended recipient(s), you are hereby
notified that any review, disclosure, dissemination, distribution or
reproduction of this communication message in any way or act is prohibited. If
you receive this communication by mistake please notify the sender immediately
and then destroy any copies of it. Please note that the sender monitors e-mails
sent or received. Thank you.
-----Original Message-----
From: Thomas Broyer [mailto:[email protected]]
Sent: 17 May 2016 11:03
To: Maven Users List <[email protected]>
Subject: Re: mvn -U dependency:sources re-downloads released sources JARs
On Tue, May 17, 2016 at 11:29 AM Adam Mitchell <[email protected]>
wrote:
> -U is force update, it tells maven to ignore locally cached artifacts
> and to download them afresh, what behaviour were you expecting?
>
-U stands for "update-snapshots" and aims at downloading only "missing
releases" (and "updated snapshots", of course).
$ mvn -h
usage: mvn [options] [<goal(s)>] [<phase(s)>]
Options:
[…]
-U,--update-snapshots Forces a check for missing
releases and updated snapshots on
remote repositories $ mvn -v Apache
Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5;
2015-11-10T17:41:47+01:00)
Maven home: /mnt/ssd/tbr/tools/maven
Java version: 1.8.0_91, vendor: Oracle Corporation Java home:
/usr/lib/jvm/java-8-oracle/jre Default locale: fr_FR, platform encoding: UTF-8
OS name: "linux", version: "4.4.0-22-generic", arch: "amd64", family: "unix"
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]