|
||||||||
|
This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators. For more information on JIRA, see: http://www.atlassian.com/software/jira |
||||||||
- [mojo-dev] [jira] (MNBMODULE-201) ClassNotF... Javier A. Ortiz Bultron (JIRA)
- [mojo-dev] [jira] (MNBMODULE-201) ClassNotF... Jesse Glick (JIRA)
- [mojo-dev] [jira] (MNBMODULE-201) ClassNotF... Javier A. Ortiz Bultron (JIRA)
- [mojo-dev] [jira] (MNBMODULE-201) ClassNotF... Milos Kleint (JIRA)
- [mojo-dev] [jira] (MNBMODULE-201) ClassNotF... Milos Kleint (JIRA)
- [mojo-dev] [jira] (MNBMODULE-201) ClassNotF... Javier A. Ortiz Bultron (JIRA)
- [mojo-dev] [jira] (MNBMODULE-201) ClassNotF... Javier A. Ortiz Bultron (JIRA)
- [mojo-dev] [jira] (MNBMODULE-201) ClassNotF... Javier A. Ortiz Bultron (JIRA)
- [mojo-dev] [jira] (MNBMODULE-201) ClassNotF... Javier A. Ortiz Bultron (JIRA)
- [mojo-dev] [jira] (MNBMODULE-201) ClassNotF... Javier A. Ortiz Bultron (JIRA)
- [mojo-dev] [jira] (MNBMODULE-201) ClassNotF... Jesse Glick (JIRA)
- [mojo-dev] [jira] (MNBMODULE-201) ClassNotF... Javier A. Ortiz Bultron (JIRA)
- [mojo-dev] [jira] (MNBMODULE-201) ClassNotF... Javier A. Ortiz Bultron (JIRA)
- [mojo-dev] [jira] (MNBMODULE-201) ClassNotF... Jesse Glick (JIRA)

Yes src/main/nbm/manifest.mf is where OpenIDE-Module-Requires would be defined.
I am guessing your problem has nothing to do with the Maven harness but rather with the fact that you are not using the NetBeans module system correctly. You can decide to load a given class name (org.eclipse.swt.SWT) from one of two modules (swt.windows.32 and swt.windows.64) via reflection on that module’s ClassLoader, but you cannot have another class (chrriis.dj.nativeswing.swtimpl.core.SWTNativeInterface I suppose?) statically refer to SWT unless the module owning this class is one of the abovementioned modules or has a direct dependency on one (and just one) of them.
In other words, there is no such thing as dynamically picking an effective classpath for a module. The way to accomplish architecture-dependent library selection is to define an interface in a neutral base module which should also OpenIDE-Module-Needs the interface name, implement it in each of the architecture-dependent modules (which should each OpenIDE-Module-Provides the same token) registering using @ServiceProvider, and find the actual implementation at runtime using Lookup.getDefault().lookup(TheInterface.class).
In general when porting an existing mixed-language library to the NetBeans module system, if that library uses the antipattern of defining the same class name in more than one JAR and expecting the correct one to be loaded based on a specific classpath, then you will need to modify that library to use the service lookup pattern (or dependency injection).