google-collections has been replaced with guava

Description

opennms-webapp has a maven dependency on google-collections. According to the google-collections web page, http://code.google.com/p/google-collections/, it has been replaced by guava.

selenium-monitor has a maven dependency on guava.

After installing OpenNMS, both jar files are in $OPENNMS_HOME/lib/, and can lead to class problems since both google-collections and guava supply the same class objects.

An example of what a stack trace would look like is:

Exception in thread "main" java.lang.NoSuchMethodError: com.google.common.base.Objects.firstNonNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
at com.google.common.cache.CacheBuilder.getKeyStrength(CacheBuilder.java:533)
at com.google.common.cache.LocalCache.<init>(LocalCache.java:237)
at com.google.common.cache.LocalCache$LocalManualCache.<init>(LocalCache.java:4775)
at com.google.common.cache.CacheBuilder.build(CacheBuilder.java:824)
...

Acceptance / Success Criteria

None

Lucidchart Diagrams

Activity

Show:

Benjamin Reed January 17, 2013 at 1:42 PM

Good catch, fixed in 1.10+.

Fixed

Details

Assignee

Reporter

Components

Fix versions

Affects versions

Priority

PagerDuty

Created January 6, 2013 at 2:29 PM
Updated January 27, 2017 at 4:20 PM
Resolved January 17, 2013 at 1:42 PM