Я боролся с этой ошибкой в течение 3 часов.Я проверил путь сборки и путь к классам, и они одинаковы, это довольно большое веб-приложение, работающее на Tomcat и Geronimo, у него есть файл сборки для каждого компонента и затем один основной, который связывает их все вместе, но япросмотрел файлы сборки ant и сравнил их с другими в рабочих компонентах, которые используют сторонние библиотеки, и я не вижу различий.
<fileset dir="${home.dir}/component/lib" includes="*.jar"/>
Все вроде бы в порядке.Если я вызываю этот метод из теста JUnit, запускаемого из Eclipse, это не проблема, если я запускаю сервер, я получаю это исключение.
Также у меня есть две другие библиотеки, которые использует этот компонент, и я только что добавилэто как пользовательская библиотека в eclipse & в компонентах lib, указанных в build.xml, и она работает без проблем.Я пытался перемещать баночки, прибегая к методам проб и ошибок, когда логика, казалось, подводила меня, но пока не повезло.
Чтобы сделать ситуацию еще более странной, я помню, у меня была эта проблема с некоторым кодом, который я сам написал, чтодаже не в библиотеке.java.lang.NoSuchMethodError, поскольку eclipse иногда делает случайные вещи, я просто изменил имя метода и произвел очистку, и это сработало.
Я несколько раз пытался очистить и перестроить целое веб-приложение без изменений.
Мне хотелось бы получить несколько советов о том, как приблизиться к проблеме, чтобы я мог попытаться найти ошибку, как из-за одной проблемы отладки пути к классам есть где-либо еще, когда путь к классу защищен помимо файла сборки?
Буду признателен за любые предложения о том, как определить проблему.
Exception: java.lang.NoSuchMethodError
[java] Message: com.google.common.collect.ImmutableMultimap.of()Lcom/google/common/collect/ImmutableMultimap;
[java] ---- stack trace ---------------------------------------------------------------
[java] java.lang.NoSuchMethodError: com.google.common.collect.ImmutableMultimap.of()Lcom/google/common/collect/ImmutableMultimap;
[java] com.google.gdata.util.common.net.UriParameterMap.<clinit>(UriParameterMap.java:78)
[java] com.google.gdata.client.Service.computeQueryMap(Service.java:2190)
[java] com.google.gdata.client.Service.access$000(Service.java:94)
[java] com.google.gdata.client.Service$ClientStreamProperties.<init>(Service.java:1839)
[java] com.google.gdata.client.Service$ClientOutputProperties.<init>(Service.java:1986)
[java] com.google.gdata.client.Service.writeRequestData(Service.java:2029)
[java] com.google.gdata.client.Service.insert(Service.java:1408)
[java] com.google.gdata.client.GoogleService.insert(GoogleService.java:599)
[java] com.google.gdata.client.appsforyourdomain.AppsForYourDomainService.insert(AppsForYourDomainService.java:100)
[java] za.co.venturenet.api.googleapps.GoogleAppsServices.createUser(GoogleAppsServices.java:437)
[java] za.co.venturenet.api.googleapps.GoogleAppsServices.createUser(GoogleAppsServices.java:336)
[java] za.co.venturenet.api.googleapps.GoogleAppsFacade.createNewVenturenetUser(GoogleAppsFacade.java:158)