Sto cercando di utilizzare EventBus delle librerie Guava di Google.Guava java EventBus errore di istanza
Da Guava documentation dovrebbe essere facile creare un'istanza di un oggetto EventBus.
Il mio codice:
package test;
import com.google.common.eventbus.EventBus;
public class Test {
public static void main(String[] args) {
EventBus bus = new EventBus("Sample");
}
}
sto ottenendo questo errore:
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:355)
at com.google.common.cache.CustomConcurrentHashMap.<init>(CustomConcurrentHashMap.java:206)
at com.google.common.cache.ComputingCache.<init>(ComputingCache.java:39)
at com.google.common.cache.CacheBuilder.build(CacheBuilder.java:569)
at com.google.common.eventbus.EventBus.<init>(EventBus.java:156)
at test.Test.main(Test.java:7)
Java Result: 1
Ho provato con Guava 10.0, 11.0 e 12.0 e sempre lo stesso errore. Sono su OSX Lion e sto usando Netbeans 7.1: Ho provato sia Java 6 (32 e 64 bit) che Java 7: nessun miglioramento. Su google non riesco a trovare nulla. È un problema con Guava? Oppure, come al solito, mi manca qualcosa?
Con i migliori saluti,
Alessandro
A prima vista questo sembra un errore di solito si ottiene quando si hanno diverse versioni dello stesso file jar sul classpath. – biziclop
Ho appena provato su Windows con le stesse impostazioni e funziona perfettamente. Proverò a vedere se ho versioni diverse dello stesso barattolo. Ti farò sapere – Alejander
Prova l'opzione della riga di comando '-verbose: class' per vedere da dove vengono effettivamente caricate le tue classi. – biziclop