[ http://jira.codehaus.org/browse/MNGECLIPSE-59?page=comments#action_72627 ] Scott Cytacki commented on MNGECLIPSE-59: -----------------------------------------
I think I tracked down the source of my problems. The artifacts map in the MavenModelManager is not be initialized correctly. When eclipse is started this map is empty, and it is only populated when pom is opened and changed. So at some point when the plugin is starting up it needs to search through the projects and build up that map. Or the map needs to be serialized, but it seems a lot safer to build the map at the beginning of each startup. I also see that the model manager is using the embedder to read the poms. This makes sense, but it is tricky, because it is easy to create infinite recursions. If the artifact resolver causes the model manager to read a pom then the embedder will ask the artifact resolver to do some resolving which then asks the model manager to read a pom.... I'm not sure yet what the best way to prevent that. In my original patch I was avoiding the use of the emedder, but that meant the code had to reimpliment the logic for figuring out the version, goupId and artifactId from the raw pom. > Allow artifact resolution from workspace projects > ------------------------------------------------- > > Key: MNGECLIPSE-59 > URL: http://jira.codehaus.org/browse/MNGECLIPSE-59 > Project: Maven 2.x Extension for Eclipse > Issue Type: New Feature > Components: Dependency Resolver > Affects Versions: 0.0.4 > Reporter: Leonardo Quijano Vincenzi > Attachments: ArtifactResolver-try3.patch, MNGECLIPSE-59, > mngeclipse-59-drew-hack.txt, project-artifacts-2006062701.patch, > project-artifacts-2006062900.patch, project-artifacts.patch > > > Provide artifact resolution from workspace projects, which override the same > artifact from the local or remote repositories. This would allow to work with > dependant Eclipse projects without specifying the Eclipse dependency manually. > The workspace artifact resolution would have to be specified manually, since > several Maven-Enabled projects in the same workspace could have the same > artifact and version Id. Or at least automatic resolution with an optional > override would be nice. > More comments here: > http://jira.codehaus.org/browse/MNGECLIPSE-58 -- 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