2016-02-17 4 views
3

У меня есть простой вопрос. Я работаю над приложением JAVA, которое работает на Glassfish 4.1, я написал код, который нуждается в>Guava 18.0 libs, когда я запускаю свой код в своей локальной среде IDE, он работает хорошо, но когда я пытаюсь запустить этот код как часть приложения на Glassfish. Я получаю ошибку, вызванную тем, что приложение содержит Guava libs в версии 13 и мне нужна версия 18+. Итак, мой вопрос:Glassfish 4.1 Приложение JAVA - конфликт libs

Могу ли я каким-то образом добавить гуавы 18,0 LIBS к Glassfish и сказать ему предпочитают эту новую библиотеку в моем приложении?

Спасибо за ответы.

+0

Вы настроили его в maven? Сделайте Guava 18.0 libs зависимым от времени выполнения. Если вы используете IDE, вам нужно добавить Guava 18.0 libs в путь к классам. Как добавить Guava 18.0 libs jar в '/ WEB-INF/libs /', если он использует упаковку 'war'. Просто замените Guava 13.0 libs на Guava 18.0 libs. – abcdef12

+0

Какая IDE вы используете? – abcdef12

+0

Спасибо за ответ. Но моя ситуация немного сложная. Я не могу изменять зависимости libs от приложения, и мой код задействован в приложении из UI приложения как .jar-файл, а его классы используются в некоторых случаях обработки. Я пытаюсь добавить Guava 18.0 lib в \ WEB-INF \ lib, но без успеха. – user1827257

ответ

0

Попробуйте это:

  • загрузить новые файлы библиотек, которые вы заинтересованы в (или вытащить их из локального хранилища, учитывая у вас уже есть их там).
  • Устаревшие файлы в Glassfish должны находиться внутри GlassFish модуля где-то рядом: \ glassfish4 \ GlassFish \ модули
  • Заменить старый файл библиотеки с новыми загруженными новыми файлами.

Я должен был сделать то же самое раньше с помощью регистратора jboss при получении ошибки debugF, и я получил этот ответ от SO here. Удачи!