Is there a maven command line option for offline mode?

JavaMaven

Java 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

Specify offline mode via -o/--offline:

mvn -o install

Maven book reference

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

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionJoelView Question on Stackoverflow
Solution 1 - JavaDave NewtonView Answer on Stackoverflow
Solution 2 - JavakhmarbaiseView Answer on Stackoverflow
Solution 3 - JavactruedenView Answer on Stackoverflow
Solution 4 - JavadavidxxxView Answer on Stackoverflow
Solution 5 - JavavickirkView Answer on Stackoverflow