Velvet Star Monitor

Standout celebrity highlights with iconic style.

news

package dependency org.codehaus.jettison.json cannot be resolved

Writer Andrew Mclaughlin

Can anyone explain me what does the below error means? And how can I fix it?

The package dependency org.codehaus.jettison.json with the version greater than or equal to 1.3.0 required by bundle com.hosyt.astyanax.astyanax_1.0.13 cannot be resolved.

I am working with Maven and using Astyanax client with Cassandra.

Below is my pom.xml file

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="" xmlns:xsi="" xsi:schemaLocation=" "> <!-- 1. Parent POM information Most of shared sections/configurations between projects are inherited from parent pom. The shared sections are distributionManagement, repositories, pluginRepositories, PluginManagement, Plugins 2. Switch this to the project-specific aggregator pom --> <parent> <groupId>com.host.raptor</groupId> <artifactId>RaptorParent</artifactId> <version>1.6.0-RELEASE</version> </parent> <!-- POM Information about the Project --> <modelVersion>4.0.0</modelVersion> <groupId>com.host.bulls.integ</groupId> <artifactId>BullsDAO</artifactId> <version>2.0.1-SNAPSHOT</version> <!-- Packing Type is bundle for OSGI Library Bundle --> <packaging>bundle</packaging> <dependencies> <dependency> <groupId>org.apache.cassandra</groupId> <artifactId>cassandra-all</artifactId> <version>1.1.2</version> </dependency> <dependency> <groupId>com.host.astyanax</groupId> <artifactId>astyanax</artifactId> <version>1.0.13</version> <exclusions> <exclusion> <groupId>org.apache.cassandra</groupId> <artifactId>cassandra-all</artifactId> </exclusion> <exclusion> <groupId>org.codehaus.jettison</groupId> <artifactId>jettison</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.codehaus.jettison</groupId> <artifactId>jettison</artifactId> <version>1.3</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>com.host.bulls.shared</groupId> <artifactId>BullsShared</artifactId> <version>1.1.1</version> </dependency> </dependencies> <!-- Build Configration --> <build> <plugins> <!-- Apache Felix Bundle Plugin - For Generation of Manifest after Compile phase --> <plugin> <groupId>org.apache.felix</groupId> <artifactId>maven-bundle-plugin</artifactId> <!-- Configuration for generating the Manifest.mf --> <executions> <execution> <id>bundle-manifest</id> <phase>process-classes</phase> <goals> <goal>manifest</goal> </goals> </execution> </executions> <!-- Configuration for generating the Manifest.mf --> <configuration> <manifestLocation>src/main/resources/META-INF</manifestLocation> <!-- Manifest Headers which need to customized during manifest generation --> <instructions> <Bundle-SymbolicName>com.host.bulls.integ.BullsDAO</Bundle-SymbolicName> <!-- <Export-Package></Export-Package> --> <Import-Package>*, org.springframework.beans.factory;version="[3.0.5.RELEASE,4.0.0)", org.springframework.beans.factory.config;version="[3.0.5.RELEASE,4.0.0)", net.sf.cglib.core;version="[2.1.3,3.0.0)", net.sf.cglib.proxy;version="[2.1.3,3.0.0)", net.sf.cglib.reflect;version="[2.1.3,3.0.0)" </Import-Package> <!-- <X-Raptor-Pipeline-Handler></X-Raptor-Pipeline-Handler> --> <!-- <X-Raptor-Initializer></X-Raptor-Initializer> --> </instructions> </configuration> </plugin> </plugins> </build> <!-- Configuration of repositories for dependency resolution --> <repositories> <!-- Raptor Bundles Repository --> <!-- This is needed to locate the Raptor Parent project. Other repositories come from the parent. --> <repository> <id>raptor.releases</id> <url> <releases /> <snapshots> <enabled>false</enabled> </snapshots> </repository> <repository> <id>releases</id> <url> <releases> </releases> <snapshots> <enabled>false</enabled> </snapshots> </repository> <repository> <id>thirdparty</id> <url> <releases> </releases> <snapshots> <enabled>false</enabled> </snapshots> </repository> <repository> <id>host</id> <url> <releases /> <snapshots> <enabled>false</enabled> </snapshots> </repository> <repository> <id>central</id> <name>Maven Central Repo</name> <url> </repository> <repository> <id>riptano</id> <name>riptano</name> <url> </repository> </repositories>
</project>

3 Answers

It means com.hosyt.astyanax.astyanax_1.0.13 depends on org.codehaus.jettison:jettison version 1.3.0 or greater but it's not found.Your pom includes version 1.3 but Maven determines 1.3 is older than 1.3.0. Try changing it into

<dependency> <groupId>org.codehaus.jettison</groupId> <artifactId>jettison</artifactId> <version>1.3.1</version>
</dependency>

(Assuming your project is compatible with 1.3.1)

2

Just a guess (since I cannot check this because of the non-public artifacts): Move the jettison dependency before the astyanax dependency - because it seems to work for the cassandra-all dependency which you also exclude. To me it looks like Maven tries to resolve the transitive astyanax dependencies before knowing the later declaration.

gradle dependency for Android

implementation ('com.thoughtworks.xstream:xstream:1.4.9') { exclude group: 'xmlpull', module: 'xmlpull'
}
implementation 'com.github.codehaus:jettison:jettison-1.3.7'

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.