maven-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Robert Kuropkat <>
Subject Re: Why is "mvn validate compile" different from "mvn validate; mvn compile"?
Date Thu, 07 Nov 2013 21:43:14 GMT

On 11/07/2013 04:29 PM, Alexander Kriegisch wrote:


> Our company even has an internal Nexus, but
>    - I kinda dislike manually uploading external JARs there

That's what an internal Maven repository (Nexus or Artifactory) is 
actually for.  You limit the surprises caused by relying on transient or 
unreliable sources.  It's no different than storing custom rpms in a 
local yum repository so you don't lose those.

>    - I was in a situation where I did not have access to that Nexus instance

I've seen, and done so myself, the idea of setting up yet another Nexus 
repository on your development laptop.  While it seems a little 
outlandish, what it does do is cache everything you need locally so you 
can work offline.  Of course, if you have no network connection and 
spring a new dependency onto the scene, you are stuck, but I would think 
that a reasonable assumption under any circumstance.  If needed, it also 
gives you a way to vet any library upgrades locally before submitting 
them to the corporate repository (Nexus).  Depends on what your internal 
processes are.

P.S.  You can do this without a repository manager like Nexus by 
injecting it directly into your .m2 cache, but at that point, I like the 
management utility of Nexus to keep them and leave me the option of 
blowing away my .m2 cache if something gets chunked up there...


> Having said that and further explained my situation, do you have any suggestion how to
solve this problem in a clean, canonical Maven way, given a single condition: no private Nexus
or external Maven repo is available and I want one-stop shopping and clean bootstrapping right
from Maven. I think this is a simple enough and understandable requirement. It is actually
what I have started using Maven for.

Being new to Maven myself, I'll defer to better suggestions, but I would 
say the most Maven-like solution is to submit the jars to your corporate 
Nexus and then everything else just works like magic. You'll probably 
want to create a custom "hosted" repo to store such things, one that is 
separate from any repos you push snapshots and releases into and then 
use a "Group" to make it all visible or some such...


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message