Hi Igor,
then it is just a simple project configurator implementation. The only thing that is a little bit frustrating, that we talk about plugins bound to the package phase, which is not interesting. Anyway, it is working, and if I change the configuration of such plugin (e.g. a jar plugin execution), then m2e will mark the project that it should be updated (because the plugin has a configurator associated now). So far, its ok.
My question is how to store the classifier/location map to a project? I think about to introduce a new method in IMavenProjectFacade to register a mapping, and the implementation may store it via IProject.setPersistentProperty(). And a getter method, which can be used in WorkspaceStateWriter, and during java launch.
What do you think?
Regarding the IClassifierClasspathProvider, it can fall back to the map registered in IMavenProjectFacade, if there is no concrete provider registered. Maybe, it can be deprecated, but...
@Fred: BlankClassifierClasspathProvider is used to support the current project. So if a class from test sources are invovled in the launch, both test and main classes are populated to the classpath. So this is a special case. In other cases only one location is mapped.
Is it ok then, to map one location for a classifier?
Best regards,
-- Vazul