I also tried with Maven Bundle Plugin 2.4.0 and have the same issue Kind regards, Ben
Le 31 mars 2014 à 11:18, Benoît Thiébault <[email protected]> a écrit : > OK, I’m back at work and I have been trying your snippet. > > I have a compilation problems… It seems Maven Bundle Plugin has difficulties > parsing the filter. > > Here is the error message: >> mvn clean install -DskipTests=true > [INFO] Scanning for projects... > [ERROR] The build could not read 1 project -> [Help 1] > [ERROR] > [ERROR] The project (/path/to/my/project/pom.xml) has 1 error > [ERROR] Non-parseable POM > /path/to/my/project/modules/my-module-osx64b/pom.xml: entity reference names > can not start with character '(' (position: START_TAG seen > ...<Require-Capability>osgi.native; filter:="(&(... @93:70) @ line 93, > column 70 -> [Help 2] > [ERROR] > [ERROR] To see the full stack trace of the errors, re-run Maven with the -e > switch. > [ERROR] Re-run Maven using the -X switch to enable full debug logging. > [ERROR] > [ERROR] For more information about the errors and possible solutions, please > read the following articles: > [ERROR] [Help 1] > http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException > [ERROR] [Help 2] > http://cwiki.apache.org/confluence/display/MAVEN/ModelParseException > > The line in the POM is: > <Require-Capability>osgi.native; > filter:="(&(osgi.native.osname=MacOS)(os.native.processor=x86_64))"</Require-Capability> > > I am using the following configuration for Maven Bundle Plugin: > <plugin> > <groupId>org.apache.felix</groupId> > <artifactId>maven-bundle-plugin</artifactId> > <version>2.3.7</version> > <extensions>true</extensions> > </plugin> > > Thanks for your help > > Ben > > Le 29 mars 2014 à 11:21, Neil Bartlett <[email protected]> a écrit : > >> You cannot do this with OBR. If you can use the R5 repository format, along >> with the repoindex tool, then you can use Provide- and Require-Capability >> headers to ensure the set of libraries you need is resolved. For example >> the fragment "org.example.nativelib.osx64" would provide something custom >> like this: >> >> Provide-Capability: myapp.native; library=com.example.nativelib >> >> and it would require the osgi.native capability to ensure it can only >> resolve on a single platform: >> >> Require-Capability: osgi.native; >> filter:="(&(osgi.native.osname=MacOS)(os.native.processor=x86_64))" >> >> Now your core bundle just requires the myapp.native capability and the >> resolver will pick the right fragment for your runtime platform. >> >> >> On Sat, Mar 29, 2014 at 7:47 AM, Benoît Thiébault >> <[email protected]>wrote: >> >>> Hi everyone, >>> >>> I’m willing to simplify my application deployment and plan to use an OBR. >>> On this OBR, I have deployed several bundles, including some containing >>> native code. >>> >>> I have a cross-platform bundle, say org.example.nativelib and one fragment >>> for each platform: >>> - org.example.nativelib.linux64b >>> - org.example.nativelib.linux32b >>> - org.example.nativelib.win7-64b >>> - org.example.nativelib.osx64b >>> - etc. >>> >>> How can I be sure that when deploying org.example.nativelib from the OBR, >>> the native fragment of the correct platform will be deployed? >>> >>> Thanks for your help >>> >>> Benoît >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: [email protected] >>> For additional commands, e-mail: [email protected] >>> >>> > > -- > Dr Benoît Thiébault > Project Manager > > Artenum Toulouse - Science & Groupware > http://www.artenum.com > > Bâtiment Calfocenter > 10, rue Marguerite-Long > 31320 Castanet-Tolosan > France > Phone: +33 (0)5 82 95 19 00 > > -- Dr Benoît Thiébault Project Manager Artenum Toulouse - Science & Groupware http://www.artenum.com Bâtiment Calfocenter 10, rue Marguerite-Long 31320 Castanet-Tolosan France Phone: +33 (0)5 82 95 19 00

