Hi, I have created a pull request to address the exception encountered when a features repository contains an empty repo: https://github.com/apache/karaf/pull/2515
This should resolve the issue you reported. Regards, JB On Thu, Apr 2, 2026 at 5:26 PM Jean-Baptiste Onofré <[email protected]> wrote: > Thanks, let me investigate. > > I will keep you posted. > > Regards > JB > > On Wed, Apr 1, 2026 at 5:48 PM Matthias Leinweber > <[email protected]> wrote: > > > > Sure > > > > <?xml version="1.0" encoding="UTF-8"?> > > > > <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=" > http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" > http://maven.apache.org/POM/4.0.0 > http://maven.apache.org/xsd/maven-4.0.0.xsd"> > > > > <artifactId>rahla</artifactId> > > > > > > <groupId>rahla.assembly</groupId> > > <modelVersion>4.0.0</modelVersion> > > > > <name>Rahla Assembly</name> > > > > <packaging>karaf-assembly</packaging> > > > > > > <parent> > > <artifactId>reactor</artifactId> > > <groupId>rahla</groupId> > > <relativePath>../pom.xml</relativePath> > > <version>1.3.1-SNAPSHOT</version> > > </parent> > > > > <dependencies> > > <dependency> > > <groupId>org.apache.karaf.features</groupId> > > <artifactId>framework</artifactId> > > <type>kar</type> > > <scope>compile</scope> > > </dependency> > > > > <dependency> > > <groupId>org.apache.karaf.features</groupId> > > <artifactId>framework</artifactId> > > <classifier>features</classifier> > > <type>xml</type> > > <scope>runtime</scope> > > </dependency> > > > > <dependency> > > <groupId>org.apache.karaf.features</groupId> > > <artifactId>standard</artifactId> > > <classifier>features</classifier> > > <type>xml</type> > > <scope>runtime</scope> > > </dependency> > > > > <dependency> > > <groupId>org.apache.karaf.features</groupId> > > <artifactId>spring-legacy</artifactId> > > <classifier>features</classifier> > > <type>xml</type> > > <scope>runtime</scope> > > </dependency> > > > > <dependency> > > <groupId>org.apache.karaf.features</groupId> > > <artifactId>enterprise</artifactId> > > <classifier>features</classifier> > > <type>xml</type> > > <scope>runtime</scope> > > </dependency> > > > > <dependency> > > <artifactId>apache-camel</artifactId> > > <classifier>features</classifier> > > <groupId>org.apache.camel.karaf</groupId> > > <scope>runtime</scope> > > <type>xml</type> > > </dependency> > > > > <dependency> > > <groupId>org.apache.karaf.features</groupId> > > <artifactId>specs</artifactId> > > <classifier>features</classifier> > > <type>xml</type> > > <scope>runtime</scope> > > </dependency> > > > > <dependency> > > <artifactId>rahla</artifactId> > > <classifier>features</classifier> > > <groupId>rahla.feature</groupId> > > <scope>runtime</scope> > > <type>xml</type> > > </dependency> > > > > <dependency> > > <artifactId>fradi</artifactId> > > <classifier>features</classifier> > > <groupId>rahla.feature</groupId> > > <scope>runtime</scope> > > <type>xml</type> > > </dependency> > > > > <dependency> > > <artifactId>graphsource</artifactId> > > <classifier>features</classifier> > > <groupId>rahla.feature</groupId> > > <scope>runtime</scope> > > <type>xml</type> > > </dependency> > > > > <dependency> > > <artifactId>jedissource</artifactId> > > <classifier>features</classifier> > > <groupId>rahla.feature</groupId> > > <scope>runtime</scope> > > <type>xml</type> > > </dependency> > > <dependency> > > <artifactId>camel-route-templates</artifactId> > > <classifier>features</classifier> > > <groupId>rahla.feature</groupId> > > <scope>runtime</scope> > > <type>xml</type> > > </dependency> > > <dependency> > > <artifactId>rahla-logging</artifactId> > > <classifier>features</classifier> > > <groupId>rahla.feature</groupId> > > <scope>compile</scope> > > <type>xml</type> > > </dependency> > > > > </dependencies> > > > > > > <build> > > <plugins> > > <plugin> > > <artifactId>maven-install-plugin</artifactId> > > <configuration> > > <skip>true</skip> > > </configuration> > > <groupId>org.apache.maven.plugins</groupId> > > </plugin> > > <plugin> > > <groupId>org.apache.maven.plugins</groupId> > > <artifactId>maven-deploy-plugin</artifactId> > > <configuration> > > <skip>true</skip> > > </configuration> > > </plugin> > > <plugin> > > <artifactId>karaf-maven-plugin</artifactId> > > <configuration> > > <archiveTarGz>false</archiveTarGz> > > <archiveZip>false</archiveZip> > > <startupFeatures> > > <feature>rahla-logging</feature> > > <feature>wrap</feature> > > </startupFeatures> > > <bootFeatures> > > <feature>standard</feature> > > <feature>scr</feature> > > <feature>spifly</feature> > > <feature>pax-web-http-undertow</feature> > > <feature>jolokia</feature> > > <feature>rahla</feature> > > </bootFeatures> > > <installedFeatures> > > <feature>fradi</feature> > > <feature>graphsource</feature> > > <feature>jedissource</feature> > > <feature>camel-route-templates</feature> > > </installedFeatures> > > <libraries> > > > > <library>mvn:io.prometheus.jmx/jmx_prometheus_javaagent/${jmx_exporter.version}</library> > > > > <library>mvn:io.opentelemetry.javaagent/opentelemetry-javaagent/${opentelemetry_agent.version}</library> > > </libraries> > > <blacklistedBundles> > > <bundle>mvn:org.apache.groovy/groovy/[4,5)</bundle> > > > <bundle>mvn:com.fasterxml.woodstox/woodstox-core/7.0.0</bundle> > > <bundle>mvn:io.undertow/undertow-core/2.2.37.Final</bundle> > > > <bundle>mvn:io.undertow/undertow-servlet/2.2.37.Final</bundle> > > > <!--<bundle>mvn:org.codehaus.woodstox/stax2-api/4.2.1</bundle> > > > <bundle>mvn:org.codehaus.woodstox/woodstox-core-asl/4.4.1</bundle> > > <bundle>mvn:org.yaml/snakeyaml/1.30</bundle>--> > > </blacklistedBundles> > > <javase>17</javase> > > </configuration> > > <groupId>org.apache.karaf.tooling</groupId> > > </plugin> > > </plugins> > > <resources> > > <resource> > > <directory>src/main/resources</directory> > > <filtering>false</filtering> > > <includes> > > <include>**/*</include> > > </includes> > > </resource> > > <resource> > > <directory>src/main/filtered-resources</directory> > > <filtering>true</filtering> > > <includes> > > <include>**/*</include> > > </includes> > > </resource> > > </resources> > > </build> > > </project> > > > > > > > > Am Mi., 1. Apr. 2026 um 15:22 Uhr schrieb Jean-Baptiste Onofré < > [email protected]>: > >> > >> Hi Matthias > >> > >> I suspect it's related to a change I did on the karaf-maven-plugin > (around assembly). > >> > >> Can you share with me the pom.xml to reproduce it ? > >> > >> Thanks, > >> > >> Regards > >> JB > >> > >> On Tue, Mar 31, 2026 at 6:46 PM Matthias Leinweber < > [email protected]> wrote: > >>> > >>> Dear Karaf Users, > >>> > >>> I am currently maintaining a Karaf assembly and am in the process of > upgrading to version 4.4.10. However, I am encountering an error message > during startup and would appreciate guidance on how to begin debugging this > issue > >>> > >>> java.lang.RuntimeException: Repository spec is empty string. : > mvn:org.apache.karaf.features/standard/4.4.10/xml/features > >>> at > org.apache.karaf.features.internal.service.RepositoryImpl.load(RepositoryImpl.java:121) > >>> at > org.apache.karaf.features.internal.service.RepositoryImpl.<init>(RepositoryImpl.java:51) > >>> at > org.apache.karaf.features.internal.service.RepositoryCacheImpl.create(RepositoryCacheImpl.java:51) > >>> at > org.apache.karaf.features.internal.service.FeaturesServiceImpl.addRepository(FeaturesServiceImpl.java:386) > >>> at > org.apache.karaf.features.internal.service.FeaturesServiceImpl.addRepository(FeaturesServiceImpl.java:381) > >>> at > org.apache.karaf.features.internal.service.BootFeaturesInstaller.addRepositories(BootFeaturesInstaller.java:136) > >>> at > org.apache.karaf.features.internal.service.BootFeaturesInstaller.installBootFeatures(BootFeaturesInstaller.java:95) > >>> at > org.apache.karaf.features.internal.service.BootFeaturesInstaller.start(BootFeaturesInstaller.java:89) > >>> at > org.apache.karaf.features.internal.osgi.Activator.doStart(Activator.java:215) > >>> at > org.apache.karaf.util.tracker.BaseActivator.run(BaseActivator.java:312) > >>> at > java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) > >>> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) > >>> at > java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) > >>> at > java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) > >>> at java.base/java.lang.Thread.run(Thread.java:1583) > >>> Caused by: shaded.org.ops4j.lang.NullArgumentException: Repository > spec is empty string. > >>> at > shaded.org.ops4j.lang.NullArgumentException.validateNotEmpty(NullArgumentException.java:108) > >>> at > org.ops4j.pax.url.mvn.internal.config.MavenRepositoryURL.<init>(MavenRepositoryURL.java:221) > >>> at > org.ops4j.pax.url.mvn.internal.config.MavenConfigurationImpl.getRepositories(MavenConfigurationImpl.java:401) > >>> at > org.ops4j.pax.url.mvn.internal.AetherBasedResolver.selectRemoteRepositories(AetherBasedResolver.java:928) > >>> at > org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:368) > >>> at > org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:352) > >>> at > org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:322) > >>> at > org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:312) > >>> at > org.ops4j.pax.url.mvn.internal.Connection.getInputStream(Connection.java:120) > >>> at java.base/java.net.URL.openStream(URL.java:1325) > >>> at > org.apache.karaf.features.internal.service.RepositoryImpl.load(RepositoryImpl.java:114) > >>> ... 14 more > >>> > >>> > >>> Could you please advise on the best approach or specific logs I should > examine to identify the root cause? I get this erorr for every feature > defined in my karaf-assembly > >>> > >>> Best regards, > >>> > >>> Matthias Leinweber > >>> >
