Is there a maven command line option for offline mode?
JavaMavenJava Problem Overview
You can specify in your maven settings file that you want to run in offline mode, but is there an equivalent command line option?
I would imagine something like e.g.
mvn install -Dmaven.offline.true
Java Solutions
Solution 1 - Java
Solution 2 - Java
Just a simple:
mvn --offline
In the future, I recommend referring to mvn --help
.
Solution 3 - Java
Maven's offline mode is invoked using mvn -o
.
However, that alone may not be enough, because sometimes the current project refers to artifacts which are not yet present in the Maven local repository cache (~/.m2/repository
). Attempting to build that project in offline mode will fail, because needed dependencies are missing and cannot be downloaded.
So there is another useful goal:
mvn dependency:go-offline
This is a great command to run before hopping on a plane, which will improve your chances of BUILD SUCCESS
. See the go-offline documentation for details.
Solution 4 - Java
mvn -o
works in most of cases but in some cases it will not enough as from Maven 3 a downloaded artifact from a remote/central repository creates a _remote.repositories
file in your local repository with a reference about where the dependency was downloaded.
It may causes some issues if later you don't have access to this remote repository during your builds.
A workaround that may work is using mvn -o -llr yourGoal
.
From the help documentation :
-llr,--legacy-local-repository Use Maven 2 Legacy Local Repository behaviour, ie no use of _remote.repositories. Can also be activated by using -Dmaven.legacyLocalRepo=true-o,--offline Work offline
Another way to execute mvn in an offline way is deleting these _remote.repositories
meta data stored in the directory of the downloaded dependencies.
Solution 5 - Java
Try -o, or even --help to get help with all options