Can you check if you don't have empty <repository/> in your features repository XML ?
Regards JB On Sun, Apr 5, 2026 at 6:22 PM Matthias Leinweber < [email protected]> wrote: > Hi JB, > > Is there a workaround for me? > > Br > Matthias > > Jean-Baptiste Onofré <[email protected]> schrieb am So., 5. Apr. 2026, > 17:25: > >> 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 >>> >>> >>> >>
