Shared local repository
-----------------------
Key: MNG-4980
URL: http://jira.codehaus.org/browse/MNG-4980
Project: Maven 2 & 3
Issue Type: New Feature
Components: Artifacts and Repositories
Affects Versions: 3.1
Reporter: Markus KARG
Priority: Minor
Execution speed of mvn is directly dependent to the fact that there are lots of
artifacts to get resolved via internet (or even slow LANs). To reduce the
impact of the internet's delay, one can use artifact managers like Nexus
serving as a cache to all LAN users. To reduce the impact of the LAN's delay,
mvn uses a local repository serving as a cache to all local users.
But that local cache (.m2/repository) is private to the user. While it makes
sense that there is a private repository for every user (e. g. so one user is
not able to install manually into other user's repository, or so one user
cannot see really private things of another user), it makes no sense that there
is no shared cache for all users.
My proposal would be that mvn splits the local repository into two parts. The
first part is a cache used by all users of that machine (which could be
hundreds in case of terminal servers or university class room machines) (on
Windows best located at %PROGRAMDATA%\.m2\repository). It gets filled solely by
downloading from a private or public repository, but one cannot install into
that to keep privacy and stability. The second part is the existing repository
(%USERPROFILE%\.m2\repository) and it gets filled only by manual installing
using mvn install.
Thanks to this splitting, chances are good that shared machines will have
latest dependencies stored locally already, reducing LAN delay. Builds run
faster then. Also, the user's own local repository is much cleaner then,
showing only his own manually installed projects, but not cached dependencies.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira