Matt Jones created KARAF-4099: --------------------------------- Summary: Karaf 4.0.2 with cave 4.0.0: obr:deploy not deploying dependencies Key: KARAF-4099 URL: https://issues.apache.org/jira/browse/KARAF-4099 Project: Karaf Issue Type: Bug Components: cave-repository, karaf-osgi Affects Versions: 4.0.2 Environment: Windows 7 with java 1.8 running Karaf 4.0.2 and Cave 4.0.0 Reporter: Matt Jones
Karaf 4.0.2 using a Cave 4.0.0 repository is not installing the dependencies for a bundle. Here are the steps to reproduce. When I run this with Karaf 3.0.5 and Cave 3.0.0, it works. 1. Install Karaf 4.0.2 2. Ran feature:install obr 3. Ran feature:repo-add mvn:org.apache.karaf.cave/apache-karaf-cave/4.0.0/xml/features 4. Ran feature:install cave-server 5. Created my cave repository: cave:repository-create acct_service 6. Uploaded 3 bundles, 1 implementation bundle, 1 API bundle, and 1 additional dependency. 7. Viewed the repository.xml in the cave repository and everything looked good. 8. Ran obr:url-add with the repository.xml 9. Ran obr:url-refresh 10. Ran obr:list. I can see all three bundles. 11. Ran obr:deploy -s com.matt.accountservice.impl (this is the implementation bundle that has the two other dependencies) The obr:deploy command fails and gives me a message that I have unsatified requirements. The two requirements that are missing show when I run the obr:list command. When I run obr:resolve, I get the following error in the logs: java.lang.IllegalArgumentException at org.apache.felix.bundlerepository.impl.RequirementImpl.setFilter(RequirementImpl.java:101)[129:org.apache.felix.bundlerepository:2.0.6] at org.apache.felix.bundlerepository.impl.DataModelHelperImpl.requirement(DataModelHelperImpl.java:72)[129:org.apache.felix.bundlerepository:2.0.6] at org.apache.karaf.obr.command.ObrCommandSupport.parseRequirement(ObrCommandSupport.java:211)[130:org.apache.karaf.obr.core:4.0.2] at org.apache.karaf.obr.command.ObrCommandSupport.parseRequirements(ObrCommandSupport.java:217)[130:org.apache.karaf.obr.core:4.0.2] at org.apache.karaf.obr.command.ResolveCommand.doExecute(ResolveCommand.java:69)[130:org.apache.karaf.obr.core:4.0.2] at org.apache.karaf.obr.command.ObrCommandSupport.execute(ObrCommandSupport.java:58)[130:org.apache.karaf.obr.core:4.0.2] at org.apache.karaf.shell.impl.action.command.ActionCommand.execute(ActionCommand.java:83)[43:org.apache.karaf.shell.core:4.0.2] at org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:67)[43:org.apache.karaf.shell.core:4.0.2] at org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:87)[43:org.apache.karaf.shell.core:4.0.2] at org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:480)[43:org.apache.karaf.shell.core:4.0.2] at org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:406)[43:org.apache.karaf.shell.core:4.0.2] at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108)[43:org.apache.karaf.shell.core:4.0.2] at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:182)[43:org.apache.karaf.shell.core:4.0.2] at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:119)[43:org.apache.karaf.shell.core:4.0.2] at org.apache.felix.gogo.runtime.CommandSessionImpl.execute(CommandSessionImpl.java:94)[43:org.apache.karaf.shell.core:4.0.2] at org.apache.karaf.shell.impl.console.ConsoleSessionImpl.run(ConsoleSessionImpl.java:268)[43:org.apache.karaf.shell.core:4.0.2] at java.lang.Thread.run(Thread.java:745)[:1.8.0_60] Caused by: org.osgi.framework.InvalidSyntaxException: Invalid operator: ): (com.matt.accountservice.impl) at org.apache.felix.utils.filter.FilterImpl$Parser.parse_item(FilterImpl.java:1357)[129:org.apache.felix.bundlerepository:2.0.6] at org.apache.felix.utils.filter.FilterImpl$Parser.parse_filtercomp(FilterImpl.java:1233)[129:org.apache.felix.bundlerepository:2.0.6] at org.apache.felix.utils.filter.FilterImpl$Parser.parse_filter(FilterImpl.java:1198)[129:org.apache.felix.bundlerepository:2.0.6] at org.apache.felix.utils.filter.FilterImpl$Parser.parse(FilterImpl.java:1172)[129:org.apache.felix.bundlerepository:2.0.6] at org.apache.felix.utils.filter.FilterImpl.newInstance(FilterImpl.java:87)[129:org.apache.felix.bundlerepository:2.0.6] at org.apache.felix.bundlerepository.impl.RequirementImpl.setFilter(RequirementImpl.java:97)[129:org.apache.felix.bundlerepository:2.0.6] ... 16 more -- This message was sent by Atlassian JIRA (v6.3.4#6332)