[rabbitmq-discuss] Wrong Version of Commons IO Bundled with RabbitMQ

13 views
Skip to first unread message

Richard-Clayton

unread,
Jan 21, 2012, 2:50:58 PM1/21/12
to rabbitmq...@lists.rabbitmq.com

Hello All,

I was in the process of rolling RabbitMQ into Apache Felix, and ran into an
"unsatisfied dependency" error:

ERROR: Bundle com.rabbitmq.client [11] Error starting
file:/Users/rclayton/Server/felix-framework-4.0.2/bundle/rabbitmq-client.jar
(org.osgi.framework.BundleException: Unresolved constraint in bundle
com.rabbitmq.client [11]: Unable to resolve 11.0: missing requirement [11.0]
osgi.wiring.package;
(&(osgi.wiring.package=org.apache.commons.io)(version>=1.4.0)(!(version>=2.0.0))))
org.osgi.framework.BundleException: Unresolved constraint in bundle
com.rabbitmq.client [11]: Unable to resolve 11.0: missing requirement [11.0]
osgi.wiring.package;
(&(osgi.wiring.package=org.apache.commons.io)(version>=1.4.0)(!(version>=2.0.0)))
at
org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:3826)
at org.apache.felix.framework.Felix.startBundle(Felix.java:1868)
at
org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1191)
at
org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:295)
at java.lang.Thread.run(Thread.java:680)
____________________________
Welcome to Apache Felix Gogo


The RabbitMQ Java Client API is currently including the old version of
Apache Commons IO (1.2.0) and your bundle manifest is requiring a version
greater than or equal to 1.4.0 and less than 2.0.0. This error is resolved
by including Commons IO 1.4.0.

Thanks,

Richard
--
View this message in context: http://old.nabble.com/Wrong-Version-of-Commons-IO-Bundled-with-RabbitMQ-tp33180852p33180852.html
Sent from the RabbitMQ mailing list archive at Nabble.com.

_______________________________________________
rabbitmq-discuss mailing list
rabbitmq...@lists.rabbitmq.com
https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss

Steve Powell

unread,
Jan 23, 2012, 11:38:58 AM1/23/12
to Richard-Clayton, rabbitmq...@lists.rabbitmq.com
Richard,

Thank you for pointing this out -- for some reason our builds didn't
spot this. I have raised a bug for this (bug24701) and it will be fixed in the
next release.

In the meantime, you could patch the MANIFEST.MF in the bundle jar so that the

 Import-Package:

header includes the import:

 org.apache.commons.io;version="[1.2,2)"

Since this is a one character change it ought not to disturb the lines or the
lengths thereof. Be careful not to do so as the format of
MANIFEST.MF files is quite restrictive.

Thank you for pointing this out. If other versions of the commons-io packages
are present in the repository that the felix resolver uses, it ought to use them
if they fall into the original range.

We are presently looking to eliminate the dependency upon org.apache.commons.io
in run-time code.

Regards
Steve Powell  (a hapless bunny)
----------some more definitions from the SPD----------
vermin (v.) Treating the dachshund for roundworm.
chinchilla (n.) Cooling device for the lower jaw.
socialcast (n.) Someone to whom everyone is speaking but nobody likes.

On 21 Jan 2012, at 19:50, Richard-Clayton wrote:
http://old.nabble.com/Wrong-Version-of-Commons-IO-Bundled-with-RabbitMQ-td33180852.html#a33180852
Reply all
Reply to author
Forward
0 new messages