Java Opensaml не регистрируется с log4j, если исключить log4j-over-slf4j [duplicate]

Если все остальное не удается, перекомпилируйте.

Недавно я смог избавиться от нерешенной внешней ошибки в Visual Studio 2012, просто перекомпилировав нарушивший файл. Когда я перестроил, ошибка исчезла.

Это обычно происходит, когда две (или более) библиотеки имеют циклическую зависимость. Библиотека A пытается использовать символы в B.lib и библиотеке B пытается использовать символы из A.lib. Ничего не существует для начала. Когда вы пытаетесь скомпилировать A, шаг ссылки завершится неудачно, потому что он не может найти B.lib. A.lib будет сгенерирован, но не будет dll. Затем вы компилируете B, который будет успешным и сгенерирует B.lib. Повторная компиляция A теперь будет работать, потому что теперь найден B.lib.

45
задан rachana 21 November 2013 в 12:14
поделиться

5 ответов

Таким образом, вы должны исключать зависимости от конфликта. Попробуйте это:

<exclusions>
  <exclusion> 
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-log4j12</artifactId>
  </exclusion>
  <exclusion> 
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
  </exclusion>
</exclusions> 

Это решило ту же проблему с slf4j и Dozer.

61
ответ дан Tomas Hanus 25 August 2018 в 23:12
поделиться
0
ответ дан AJ. 25 August 2018 в 23:12
поделиться
0
ответ дан okwap 25 August 2018 в 23:12
поделиться
1
ответ дан Stephen C 25 August 2018 в 23:12
поделиться
1
ответ дан Yuvraj Kakkar 25 August 2018 в 23:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: