[Seasar-user:9142] Re: pom.xmlのdependencyにcommons-configuration-1.4.jarを追加するとNoSuchMethodError

Taro Unno [E-MAIL ADDRESS DELETED]
2007年 7月 13日 (金) 11:32:39 JST


海野です。

森脇さん、ずばり解決しました。
大変助かりました。感謝致します。

pom.xmlの勉強不足ですね、お恥ずかしい限りです。
恥かきついでに、もう1つ、出来れば教えてください。

実は私もcommons-configurationのpomを見ていたのですが、ファイルは
 http://repo1.maven.org/maven2/commons-configuration/commons-configuration/1.4/commons-configuration-1.4.pom
のことではないのでしょうか。
(セントラルリポジトリのpomで、こちらのローカルリポジトリにも
同じものがダウンロードされています。)

これには
    <dependency>
      <groupId>servletapi</groupId>
      <artifactId>servletapi</artifactId>
      <version>2.4</version>
      <optional>true</optional>
    </dependency>
と書かれていて、バージョンは2.4と書かれているのに
どうしてクラスパスには2.2が設定されるのかわかりませんでした。

森脇さんはどこのpom.xmlをご覧になったのですか?

宜しくお願い致します。


07/07/13 に k. moriwaki<[E-MAIL ADDRESS DELETED]> さんは書きました:
> 森脇と申します。
>
> commons-configurationのpom.xmlを見てみたところ、
> dependenciesに以下のJarが書かれていました。
>
> ・ant-optional-1.5.1.jar
> ・avalon-framework-4.1.3.jar
> ・commons-beanutils-1.7.0.jar
> ・commons-beanutils-core-1.7.0.jar
> ・commons-codec-1.3.jar
> ・commons-collections-3.2.jar
> ・commons-digester-1.8.jar
> ・commons-jxpath-1.2.jar
> ・commons-lang-2.3.jar
> ・commons-logging-1.1.jar
> ・commons-logging-api-1.0.4.jar
> ・jdom-b9.jar
> ・junit-3.8.jar
> ・log4j-1.2.12.jar
> ・logkit-1.0.1.jar
> ・servlet-api-2.2.jar
> ・xerces-1.2.3.jar
> ・xml-apis-1.0.b2.jar
>
> この中にservlet-api-2.2.jarとxerces-1.2.3.jarが含まれているため、
> classpathに追加されたのだと思います。
> なので
>
>       <dependency>
>               <groupId>commons-configuration</groupId>
>               <artifactId>commons-configuration</artifactId>
>               <version>1.4</version>
>       </dependency>
>
>>
>    <dependency>
>      <groupId>commons-configuration</groupId>
>      <artifactId>commons-configuration</artifactId>
>      <version>1.4</version>
>      <exclusions>
>        <exclusion>
>          <groupId>javax.servlet</groupId>
>          <artifactId>servlet-api</artifactId>
>        </exclusion>
>        <exclusion>
>          <groupId>xerces</groupId>
>          <artifactId>xerces</artifactId>
>        </exclusion>
>      </exclusions>
>    </dependency>
>
> とすれば含まれなくなるはずです。
> 後はプロジェクトに合わせてexclusionを追加すればよいかと思います。
>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>


Seasar-user メーリングリストの案内