Initialization of the artifact map, and initialization after cleaning. ----------------------------------------------------------------------
Key: MNGECLIPSE-182 URL: http://jira.codehaus.org/browse/MNGECLIPSE-182 Project: Maven 2.x Extension for Eclipse Issue Type: Sub-task Components: Dependency Resolver Reporter: Scott Cytacki Assigned To: Eugene Kuleshov I started on the initialization of the artifact map in the MaveModelManager. But it is getting a bit more complicated than I thought, and it seems different than what Euguene suggested. So I wanted to describe it before I go too much further. Here is the current design: MavenModelManager has an initialize() method that: * checks if it has been initialized before, if so it does nothing * traverses the projects in the workspace and a calls updateMavenModel for each pom it finds. the Job created in Maven2ClassContainerInitializer initialize() method calls initialize on the mavenModelManager Additionally there is the issue of when the workspace is cleaned. Here is the case: - project A depends on groupB:artifactB - the workspace becomes inconsistant, or the automatic building is turned off - project B is added to the workspace and its maven key is groupB:artifactB - now the workspace is cleaned The building process appears to decide the order of processing projects based on the dependency graph between the projects. In this case project A doesn't know it depends on B yet, so the builder might build project A first. In this case the poms in B won't be in the artifact map yet. So A won't add the project B as a dependency. I'm curious again how the PDE handles cases like this. Perhaps the best is to listen for the clean event and re-create the artifact map in the modelManager. -- 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