I am working on a Clojure facade for Aether,[1] and would like to clarify some 
semantics.  Though I'm working with Aether, I think this question is generally 
applicable for all Maven tools…but let me know if I should simply bounce to the 
Aether ML.

In short, I'd like to know what the functional differences are between the 
install and deploy operations, and whether the latter safely supersets the 
former.

I know that 'install' is intended for local file-based repositories, and 
'deploy' is for remote repositories using any of a half-dozen well-known 
transports.  I can readily see that installs produce a slightly different set 
of files and metadata than deploying to the same local file repository; 
however, those differences do not seem to affect the resolution of dependencies 
in any way.  

I presume there must be some subtle ways in which 'install' must remain a 
distinct operation with its own semantics, but I've not discovered them (and 
I've not found any documentation which points the way, official or otherwise).  
Without knowing this, it seems like there's no reason for 'install' to exist at 
all, insofar as it seems you just use 'deploy' to push artifacts into a 
file-based repository and successfully use the results.

Thanks,

- Chas

[1] https://github.com/cemerick/pomegranate
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org

Reply via email to