Próbuję użyć EventBus bibliotek Google Guava.Guava java EventBus błąd wystąpienia
Z Guva documentation powinno być łatwe utworzenie instancji obiektu EventBus.
Mój kod:
package test;
import com.google.common.eventbus.EventBus;
public class Test {
public static void main(String[] args) {
EventBus bus = new EventBus("Sample");
}
}
dostaję ten błąd:
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
Próbowałem z Guava 10,0, 11,0 i 12,0 i zawsze ten sam błąd. Jestem na OSX Lion i używam Netbeans 7.1: Próbowałem zarówno Java 6 (32 i 64bit), jak i Java 7: żadnych usprawnień. W Google nie mogę znaleźć niczego. Czy to jest problem z Guava? Lub, jak zwykle, czegoś brakuje?
poważaniem,
Alessandro
Na pierwszy rzut oka wygląda jak błąd zazwyczaj dostajesz kiedy masz różne wersje tego samego pliku jar na ścieżce klas. – biziclop
Właśnie próbowałem w systemie Windows z tymi samymi ustawieniami i działa dobrze. Spróbuję sprawdzić, czy mam różne wersje tego samego słoika. Dam ci znać: – Alejander
Wypróbuj opcję wiersza poleceń '-verbose: class', aby sprawdzić, skąd pochodzą twoje klasy. – biziclop