0

Maven を介して Apache Commons EmailValidator を使用すると、アプリをデプロイできない次の問題が発生します。

Exception sending context initialized event to listener instance of class org.jboss.seam.servlet.SeamListener
java.lang.LinkageError: loader constraints violated when linking org/xml/sax/EntityResolver class

pom.xml で次のコードを使用しました。

<dependency>
 <groupId>commons-validator</groupId>
 <artifactId>commons-validator</artifactId>
 <version>1.3.1</version>
</dependency>

一助?

4

1 に答える 1

0

commons-validator-1.3.1.jarアーティファクトは次のようにプルしxml-apis-1.0.b2.jarます。

$ mvn依存関係:ツリー
[情報]プロジェクトをスキャンしています...
[INFO]プレフィックスが「依存関係」のプラグインをリポジトリで検索しています。
[情報]  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - - -------------------------
[情報]建物Q2714398
[情報]タスクセグメント:[依存関係:ツリー]
[情報]  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - - -------------------------
[情報][依存関係:ツリー{実行:デフォルト-cli}]
[情報]com.stackoverflow:Q2714398:jar:1.0-SNAPSHOT
[情報]+-commons-validator:commons-validator:jar:1.3.1:compile
[情報]| +-commons-beanutils:commons-beanutils:jar:1.7.0:compile
[情報]| +-commons-digester:commons-digester:jar:1.6:compile
[情報]| | +-commons-collections:commons-collections:jar:2.1:compile
[情報]| | \-xml-apis:xml-apis:jar:1.0.b2:compile
[情報]| \-commons-logging:commons-logging:jar:1.0.4:compile
[情報]\-junit:junit:jar:3.8.1:test
[情報]  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - - -------------------------

LinkageErrorは、JBossにデプロイするときに、クラスパスに重複バージョンがあることを示しています。xml-apis-1.0.b2.jarこれは明らかに疑わしいことです。

おそらく、デプロイされたアプリケーションからそれを除外しようとするだけです(現在の詳細レベルでより正確な答えを出すことはできません)。

<dependency>
  <groupId>commons-validator</groupId>
  <artifactId>commons-validator</artifactId>
  <version>1.3.1</version>
  <exclusions>
    <exclusion>
      <groupId>xml-apis</groupId>
      <artifactId>xml-apis</artifactId>
    </exclusion>
  </exclusions>
</dependency>
于 2010-04-26T17:26:05.770 に答える