On Sun, May 10, 2009 at 9:40 PM, Raymond Feng <[email protected]> wrote: > > node-impl2 has conflicts with node-impl from the OSGi perspective because > both of them export "overlapping" packages. In Eclipse, all the PDE projects > in the workspace contributes to the OSGi bundle resolution (requiredPlugins > classpath container). This is so called "split packages" in OSGi and that's > probably root cause of the problem. You should either load node-impl or > node-impl2 but not both in your workspace. We should remove node-impl2 from > the main buid if it is there to avoid further confusions. >
There's two things here, (1) a short term fix, and (2) in the long term finding a better way for node-launcher-equinox to work. (1) lets just get rid of node-impl2 as now the changes can be merged back into node-impl. There is general agreement on the "Node usage of the workspace and implementation-node modules" thread that we need to refactor this and i already said last week on that thread i was going to do this, so it seems fine now to make this change and we can continue refining there as required. (2) We need to find a better long term solution for node-launcher-equinox as having it work by just finding modules in the parent directory is only going to continue to make the build unstable. Maven is the canonical build for Tuscany so module code needs to play properly with that. It also doesn't seem great for the modularity story to say that while Tuscany is designed to be really modular and composable but actually we must have only a single impl of each function as part of the build - and this isn't some theoretical academic discussion as we do have multiple implementations of things in 1.x which will be brought into 2.x so we need to avoid random indeterminate combinations of the modules being used in different peoples builds. I guess we need some configuration mechanism for node-launcher-equinox to tell it which modules to use, does anyone else have any suggestions? ...ant
