2008/8/1 Nick Campion <[EMAIL PROTECTED]>

> I'm having a bit of a problem with a bundle i'm trying to build.  Because
> of some external tooling, all the class files need to be located in
> ./WEB-INF/classes/com/... instead of ./com/ (with respect to the bundle
> root).  No matter what i put in the pom.xml i don't seem to be able to place
> the output from the compile into ./WEB-INF/classes/com .  Using
> <Include-Resource> instruction to move the target/classes/com branch to
> ./WEB-INF/classes/com but it also gets put in ./com .
>
> My pom.xml
>
>       <build>
>           <plugins>
>               <!-- OSGi Felix bundle plugin -->
>                       <plugin>
>                               <groupId>org.apache.felix</groupId>
>                               <artifactId>maven-bundle-plugin</artifactId>
>                               <!-- use latest release of plugin
>                               <version>1.4.0</version>
>                               -->
>                               <!-- load felix extensions -->
>                               <extensions>true</extensions>
>                               <configuration>
>                                       <!--
>                                               The following along with the
> maven-dependency-plugin configured below
>                                               enables running/testing the
> bundle within eclipse.
>                                       -->
>                                       <instructions>
>
> <_include>src/main/resources/META-INF/MANIFEST.MF</_include>
>                                               <Include-Resource>plugin.xml,
> WEB-INF=target/classes/WEB-INF,
> WEB-INF/classes/com=target/classes/com</Include-Resource>
>
> <Bundle-ClassPath>WEB-INF/classes</Bundle-ClassPath>
>                                               <Implementation-Title>NC Test
> Bundle</Implementation-Title>
>
> <Implementation-Version>${pom.version}</Implementation-Version>
>
> <Implementation-Vendor>NC</Implementation-Vendor>
>
> <Implementation-Vendor-Id>com.nick.test</Implementation-Vendor-Id>
>                                               <!--
> <Private-Package>*</PrivatePackage>-->
>
> <Export-Package>!*</Export-Package>
>
>                                       </instructions>
>                               </configuration>
>                       </plugin>
>           </plugins>
>       </build>
>
> I'm getting lots of errors along the lines of:
> [ERROR] Error building bundle
> com.nick.test.ui:gui:bundle:1.0.0.DEV-SNAPSHOT : Class in different
> directory than declared. Path from class name is
> com/nick/test/ui/gui/LogInstantiator.class but the path in the jar is
> /com/nick/test/ui/gui/LogInstantiator.class from Jar:dot
>
> The only difference being the leading '/'.  I'm only making a hypothesis
> that this is caused because the class files are being put in /com as well as
> /WEB-INF/classes/com.  if i put in <_failok> the produced bundle is
> virtually what i want (minus having the com directory also in the root)
>
> Anyone have any ideas?


sounds like a bug - can you open an issue on JIRA and attach
a simple project that I can "mvn install" to recreate the problem

then I can concentrate on finding a fix, and won't forgot to fix it :)


> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>

-- 
Cheers, Stuart

Reply via email to