[ 
https://issues.apache.org/jira/browse/CONFIGURATION-852?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17952711#comment-17952711
 ] 

Gary D. Gregory commented on CONFIGURATION-852:
-----------------------------------------------

Hello [~jbertram] 

In git master, we build:
{noformat}
Manifest-Version: 1.0
Created-By: Apache Maven Bundle Plugin 6.0.0
Build-Jdk-Spec: 21
Specification-Title: Apache Commons Configuration
Specification-Version: 2.12
Specification-Vendor: The Apache Software Foundation
Implementation-Title: Apache Commons Configuration
Implementation-Version: 2.12.1-SNAPSHOT
Implementation-Vendor: The Apache Software Foundation
Automatic-Module-Name: org.apache.commons.configuration2
Bundle-Description: Tools to assist in the reading of configuration/pref
 erences files in various formats; requires Java 8.
Bundle-DocURL: https://commons.apache.org/proper/commons-configuration/
Bundle-License: https://www.apache.org/licenses/LICENSE-2.0.txt
Bundle-ManifestVersion: 2
Bundle-Name: Apache Commons Configuration
Bundle-SymbolicName: org.apache.commons.commons-configuration2
Bundle-Vendor: The Apache Software Foundation
Bundle-Version: 2.12.1.SNAPSHOT
Export-Package: org.apache.commons.configuration2;version="2.12.1.SNAPSH
 OT";uses:="javax.naming,javax.sql,javax.xml.parsers,javax.xml.transform
 ,org.apache.commons.configuration2.convert,org.apache.commons.configura
 tion2.event,org.apache.commons.configuration2.ex,org.apache.commons.con
 figuration2.interpol,org.apache.commons.configuration2.io,org.apache.co
 mmons.configuration2.sync,org.apache.commons.configuration2.tree,org.w3
 c.dom,org.xml.sax,org.yaml.snakeyaml",org.apache.commons.configuration2
 .beanutils;version="2.12.1.SNAPSHOT";uses:="org.apache.commons.beanutil
 s,org.apache.commons.configuration2,org.apache.commons.configuration2.c
 onvert",org.apache.commons.configuration2.builder;version="2.12.1.SNAPS
 HOT";uses:="javax.naming,javax.sql,javax.xml.parsers,org.apache.commons
 .configuration2,org.apache.commons.configuration2.beanutils,org.apache.
 commons.configuration2.convert,org.apache.commons.configuration2.event,
 org.apache.commons.configuration2.ex,org.apache.commons.configuration2.
 interpol,org.apache.commons.configuration2.io,org.apache.commons.config
 uration2.reloading,org.apache.commons.configuration2.sync,org.apache.co
 mmons.configuration2.tree,org.xml.sax",org.apache.commons.configuration
 2.builder.combined;version="2.12.1.SNAPSHOT";uses:="org.apache.commons.
 configuration2,org.apache.commons.configuration2.beanutils,org.apache.c
 ommons.configuration2.builder,org.apache.commons.configuration2.event,o
 rg.apache.commons.configuration2.ex,org.apache.commons.configuration2.i
 nterpol,org.apache.commons.configuration2.io,org.apache.commons.configu
 ration2.reloading",org.apache.commons.configuration2.builder.fluent;ver
 sion="2.12.1.SNAPSHOT";uses:="org.apache.commons.configuration2,org.apa
 che.commons.configuration2.builder,org.apache.commons.configuration2.bu
 ilder.combined,org.apache.commons.configuration2.ex",org.apache.commons
 .configuration2.convert;version="2.12.1.SNAPSHOT";uses:="org.apache.com
 mons.configuration2.ex,org.apache.commons.configuration2.interpol",org.
 apache.commons.configuration2.event;version="2.12.1.SNAPSHOT",org.apach
 e.commons.configuration2.ex;version="2.12.1.SNAPSHOT",org.apache.common
 s.configuration2.interpol;version="2.12.1.SNAPSHOT";uses:="org.apache.c
 ommons.configuration2.ex,org.apache.commons.configuration2.io",org.apac
 he.commons.configuration2.io;version="2.12.1.SNAPSHOT";uses:="org.apach
 e.commons.configuration2.ex",org.apache.commons.configuration2.plist;ve
 rsion="2.12.1.SNAPSHOT";uses:="org.apache.commons.configuration2,org.ap
 ache.commons.configuration2.ex,org.apache.commons.configuration2.io,org
 .apache.commons.configuration2.tree",org.apache.commons.configuration2.
 reloading;version="2.12.1.SNAPSHOT";uses:="org.apache.commons.configura
 tion2.event,org.apache.commons.configuration2.io,org.apache.commons.vfs
 2",org.apache.commons.configuration2.resolver;version="2.12.1.SNAPSHOT"
 ;uses:="org.apache.commons.configuration2.interpol,org.apache.commons.c
 onfiguration2.io,org.apache.xml.resolver,org.xml.sax",org.apache.common
 s.configuration2.spring;version="2.12.1.SNAPSHOT";uses:="org.apache.com
 mons.configuration2,org.springframework.beans.factory,org.springframewo
 rk.core.env,org.springframework.core.io",org.apache.commons.configurati
 on2.sync;version="2.12.1.SNAPSHOT",org.apache.commons.configuration2.tr
 ee;version="2.12.1.SNAPSHOT",org.apache.commons.configuration2.tree.xpa
 th;version="2.12.1.SNAPSHOT";uses:="org.apache.commons.configuration2.t
 ree,org.apache.commons.jxpath.ri,org.apache.commons.jxpath.ri.model",or
 g.apache.commons.configuration2.web;version="2.12.1.SNAPSHOT";uses:="ja
 karta.servlet,javax.servlet"
Import-Package: org.apache.commons.beanutils;resolution:=optional,org.ap
 ache.commons.codec.binary;resolution:=optional,org.apache.commons.jxpat
 h;resolution:=optional,org.apache.commons.jxpath.ri;resolution:=optiona
 l,org.apache.commons.jxpath.ri.compiler;resolution:=optional,org.apache
 .commons.jxpath.ri.model;resolution:=optional,org.apache.xml.resolver;r
 esolution:=optional,org.apache.xml.resolver.helpers;resolution:=optiona
 l,org.apache.xml.resolver.readers;resolution:=optional,org.apache.xml.r
 esolver.tools;resolution:=optional,javax.servlet;resolution:=optional,o
 rg.apache.commons.jexl2;resolution:=optional,org.apache.commons.vfs2;re
 solution:=optional,org.apache.commons.vfs2.provider;resolution:=optiona
 l,org.springframework.beans.factory;resolution:=optional,org.springfram
 ework.core.env;resolution:=optional,org.springframework.core.io;resolut
 ion:=optional,org.springframework.util;resolution:=optional,com.fasterx
 ml.jackson.databind;resolution:=optional,com.fasterxml.jackson.databind
 .type;resolution:=optional,org.yaml.snakeyaml;resolution:=optional,org.
 yaml.snakeyaml.constructor;resolution:=optional,org.yaml.snakeyaml.repr
 esenter;resolution:=optional,jakarta.servlet,java.applet,java.awt,java.
 beans,java.io,java.lang,java.lang.invoke,java.lang.reflect,java.math,ja
 va.net,java.nio,java.nio.charset,java.nio.file,java.sql,java.text,java.
 time,java.time.format,java.util,java.util.concurrent,java.util.concurre
 nt.atomic,java.util.concurrent.locks,java.util.function,java.util.regex
 ,java.util.stream,javax.naming,javax.sql,javax.xml.parsers,javax.xml.tr
 ansform,javax.xml.transform.dom,javax.xml.transform.stream,org.apache.c
 ommons.lang3,org.apache.commons.lang3.builder,org.apache.commons.lang3.
 concurrent,org.apache.commons.lang3.function,org.apache.commons.lang3.m
 utable,org.apache.commons.logging,org.apache.commons.logging.impl,org.a
 pache.commons.text,org.apache.commons.text.lookup,org.apache.commons.te
 xt.translate,org.w3c.dom,org.xml.sax,org.xml.sax.helpers
Include-Resource: PropertyList-1.0.dtd=src/main/resources/PropertyList-1
 .0.dtd,properties.dtd=src/main/resources/properties.dtd,META-INF/LICENS
 E.txt=LICENSE.txt,META-INF/NOTICE.txt=NOTICE.txt
Require-Capability: osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
Tool: Bnd-7.1.0.202411251545
Multi-Release: true {noformat}
I see "resolution:=optional" in {{Import-Package}} entries but not in 
{{{}Export-Package{}}}.

Maybe we need to define a custom {{commons.osgi.export}} like we do 
{{{}commons.osgi.import{}}}...

Would that work for your use case?

> Manifest.mf in 2.12 now contains uses:="jakarta.servlet,javax. servlet"
> -----------------------------------------------------------------------
>
>                 Key: CONFIGURATION-852
>                 URL: https://issues.apache.org/jira/browse/CONFIGURATION-852
>             Project: Commons Configuration
>          Issue Type: Bug
>    Affects Versions: 2.12.0
>            Reporter: Justin Bertram
>            Priority: Major
>
> We use commons-configuration2 in ActiveMQ Artemis which includes some OSGi 
> integration. Recently when [attempting to move from 2.11.0 to 
> 2.12.0|https://github.com/apache/activemq-artemis/pull/5663] an OSGi-related 
> test started failing, and it turns out that the culprit is that 
> {{Export-Package}} in {{MANIFEST.MF}} now contains:
> {noformat}
> uses:="jakarta.servlet,javax. servlet"{noformat}
> I can update our configuration to account for this, but it's not clear to me 
> that this change was intentional given that the Maven dependencies for these 
> artifacts are marked as {{optional}}.
> Does 2.12.0 really have a hard dependency on jakarta & javax servlet?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to