The issue is that you are exporting your package with "*", which will
match subpackages...thus your impl subpackage gets exported too. Just
export "com.mycomponent.myapp"...
-> richard
Sebastien ARBOGAST wrote:
Here is the exact section in my POM:
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>1.4.0</version>
<extensions>true</extensions>
<configuration>
<manifestLocation>META-INF</manifestLocation>
<instructions>
<Export-Package>com.mycompany.myapp*
</Export-Package>
<Private-Package>com.mycompany.myapp.impl
</Private-Package>
<Import-Package>*</Import-Package>
<Include-Resource>src/main/resources,target/flex-resources/swf</Include-Resource>
<Require-Service>org.osgi.service.http.HttpService
</Require-Service>
<Bundle-Classpath>.</Bundle-Classpath>
<Bundle-SymbolicName>com.mycompany.myapp.people
</Bundle-SymbolicName>
<Solstice-Type>App</Solstice-Type>
<Solstice-Label>Basement People</Solstice-Label>
<Solstice-UI>com.mycompany.myapp.people
/PeopleModule.swf</Solstice-UI>
</instructions>
</configuration>
</plugin>
And the manifest:
Manifest-Version: 1.0
Export-Package: com.mycompany.myapp.impl;uses:="com.mycompany.mya
pp",com.mycompany.myapp
Private-Package: com.mycompany.myapp.impl
Bundle-Classpath: .
Built-By: sarbogast
Tool: Bnd-0.0.238
Bundle-Name: Basement People
Created-By: Apache Maven Bundle Plugin
Require-Service: org.osgi.service.http.HttpService
Solstice-Type: App
Build-Jdk: 1.6.0_04-dp
Bundle-Version: 1.0.0
Solstice-UI: com.mycompany.myapp.people/PeopleModule.swf
Bnd-LastModified: 1206834830830
Bundle-ManifestVersion: 2
Bundle-SymbolicName: com.mycompany.myapp.people
Import-Package: com.mycompany.myapp,com.mycompany.myapp.impl
Solstice-Label: Basement People
2008/3/30, Richard S. Hall <[EMAIL PROTECTED]>:
Sebastien ARBOGAST wrote:
It's weird because after using Private-Package, my manifest looks like
this:
Export-Package: com.mycompany.myapp.impl;uses:="com.mycompany.myapp",
com.mycompany.myapp
Private-Package: com.mycompany.myapp.impl
Is it normal that impl is still in Export-Package?
Did you cut and paste that directly? Because it doesn't look correct.
Private packages are not exported. Perhaps there is some mistake in your
POM?
-> richard
2008/3/29, Richard S. Hall <[EMAIL PROTECTED]>:
Sebastien ARBOGAST wrote:
I have a bundle with some service interfaces in com.mycompany.myappand
their implementations in com.mycompany.myapp.implSince I only want to
export
interfaces and not implementations, I add the following directive to
maven-bundle-plugin configuration:
<Export-Package>com.mycompany.myapp</Export-Package>
But then the problem is that implementations are not in the resulting
bundle. And if I a "*" to the package, implementation classes are in
the
bundle but the impl package is exported in the manifest.
How is it that the Export-Package directive also controls which
classes
are
bundled?
FYI I'm using version 1.4.0 of maven-bundle-plugin.
You need to use
<Private-Package>com.mycompany.myapp.impl</Private-Package> to include
packages that are not exported.
-> richard
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]