karlpauls commented on a change in pull request #19:
URL:
https://github.com/apache/sling-org-apache-sling-feature-launcher/pull/19#discussion_r594269283
##########
File path: pom.xml
##########
@@ -41,34 +42,44 @@
<build>
<plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-dependency-plugin</artifactId>
- <executions>
- <execution>
- <id>unpack-dependencies</id>
- <phase>prepare-package</phase>
- <goals>
- <goal>unpack-dependencies</goal>
- </goals>
- <configuration>
- <excludes>META-INF/**</excludes>
-
<outputDirectory>${project.build.directory}/classes</outputDirectory>
- <overWriteReleases>false</overWriteReleases>
- <overWriteSnapshots>true</overWriteSnapshots>
-
<includeArtifactIds>osgi.core,commons-text,commons-lang3,org.apache.sling.feature,org.osgi.util.function,org.apache.felix.cm.json,org.apache.sling.commons.johnzon,org.apache.felix.converter,commons-cli,slf4j-api,slf4j-simple</includeArtifactIds>
+ <plugin>
+ <groupId>biz.aQute.bnd</groupId>
+ <artifactId>bnd-maven-plugin</artifactId>
+ <configuration>
+ <bnd><![CDATA[
+ Main-Class: org.apache.sling.feature.launcher.impl.Main
+ -exportcontents:\
+ org.apache.sling.feature.launcher.spi.*
+ -conditionalpackage:\
+ javax.json*,\
+ org.apache.commons.cli.*,\
+ org.apache.commons.lang3.*,\
+ org.apache.commons.text.*,\
+ org.apache.felix.cm.json.*,\
+ org.apache.felix.converter.*,\
+ org.apache.johnzon.core.*,\
+ org.apache.johnzon.core.util.*,\
+ org.apache.sling.feature.*,\
+ org.osgi.*,\
Review comment:
As I said:
> The two classes in the launcher package that use osgi core api are loaded
via reflection when the real class path is assembled - hence, they should get
their packages from the framework. The static field should be inlined, no? If
not, we could consider using the value directly.
>
> I think we need the org.osgi.util.function for the org.osgi.util.converter
- but we hopefully don't need the rest.
So, for the org.osgi packages, that is something that bnd detects but is not
needed (which it can't know). Otherwise, it would be a mistake to not
conditional package them :-).
For the other imports, I'm not sure they are needed - feels like they are
not but I'm not sure....
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]