- This topic has 6 replies, 3 voices, and was last updated 15 years, 11 months ago by Riyad Kalla.
-
AuthorPosts
-
Mark HenningMemberOur highly distributed team is using maven as the master build system
for a rather large project (15 java projects and climbing) with some dependencies that are not found in any internet-reachable maven2 repository.To combat this, we have set the <LocalRepository> tag in the Maven2 settings.xml file set to a directory inside our subversion controled tree, and check in only those repository entries that are not available from the internet. This has been working up til the time I upgraded from 6.5 to 6.6 GA.
MyEclipse is no longer using my local repository, but is using the default %HOME%/.m2/repository. To add insult to injury, MyEclipse 6.6 does not allow the user to edit M2_REPO, so I can’t fix the problem in the IDE.
How can I solve this problem? This has my development effort at a standstill.
Riyad KallaMembergldnrtvr,
I just spoke in depth to our product manager and unfortunately it looks like this behavior change was actually a *bug fix*. What you are doing now, accordingly the good book of Maven, is actually not a supported use-case. Your requirements are exactly what define the need to setup a corporate/internal repository for your team. Word from our Maven guru is that you are “never suppose to manually manipulate your local repository — especially within SVN”… you’ll have to excuse the adjectives, I’m not a Maven guru, but I do know that our product manager was clear that this is an unsupported use-case with Maven.
Sorry for the bad news, let us know if we can try and help further.
Mark HenningMemberThe problem is that our distributed members could not access a corporate repository without constantly being logged into our VPN. This cripples the distributed members becuase their local network printers and network storage arrays are NOT available when logged into the VPN. It’s acceptable to have to VPN in to do Change Management, which is a once-a-day or so activity, but to do so for every build, especially during debugging?
The way we are “using” the repository should be irrelevant. MyEclipse is ignoring the settings.xml file in the maven configuration directory, which means that maven runs differently within MyEclipse than from the command line.
Is there ANY way to override this behavior or make it configurable? Our usage may not be correct according to maven chapter and verse, but the bottom line is that if MyEclipse ignores the settings.xml configuration file, I am going to have to come up with a completely new work-around strategy to solve the problem of dependencies without internet-accessable repositories, because a corporate repository is not a workable solution.
Riyad KallaMemberWe are going to give this a look in a few hours (trying to get 7.0 out the door right now so all hands are tied up at the moment). Thanks for being patient with us.
bobflschmnMemberI am having a similar problem. See this link http://www.nabble.com/run-mvn:full-source-,error-is-show-blow,how-to-do-it-td17331908s2369.html for why I moved from the default location to c:\M2_REPO.
It appears that ant 1.7 has a problem if there is a space in the directory name of the repository. Therefore I had to modify the settings.xml file to move the repository to a location without a space.
bobflschmnMemberI found an answer. Put a settings.xml file in your .m2/repository directory that points to your local repository.
Riyad KallaMemberBob thank you for posting your workaround for other users running into this same issue. I’ve tracked it for our Maven guys to have a look when they can.
-
AuthorPosts