0

だから私は持っていた

 <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-jaxrs</artifactId>
            <version>1.8.3</version>
            <scope>${defaultScope}</scope>
        </dependency>

私はこれを含めました

   <dependency>
            <groupId>org.springframework.social</groupId>
            <artifactId>spring-social-web</artifactId>
            <version>1.0.2.RELEASE</version>
        </dependency>

それ自体がこれを含みます

 <dependency>
      <groupId>org.codehaus.jackson</groupId>
      <artifactId>jackson-mapper-asl</artifactId>
      <version>1.9.3</version>
      <scope>test</scope>
    </dependency>

その結果、jsonwrapper のクラスが見つかりませんでした。

ジャクソンの依存関係の元のバージョンを更新して、Spring-social に含まれるバージョンで最新の状態にしました。これで動作するようになりました。

これはかなり壊れやすい/友好的ではないように見えますが、そのような問題を回避するために私がすべきことはありますか?

4

2 に答える 2

0

<exclusions>セクションを使用して、Maven に推移的な依存関係を無視するように指示できます。

<dependency>
    <groupId>org.springframework.social</groupId>
    <artifactId>spring-social-web</artifactId>
    <version>1.0.2.RELEASE</version>
    <exclusions>
        <exclusion>
            <artifactId>org.codehaus.jackson</artifactId>
            <groupId>jackson-mapper-asl</groupId>
        </exclusion>
    </exclusions>
</dependency>

この定義により、Maven は以前に定義した依存関係のみを使用します (1.8.3 バージョン)。ただし、これにより他の問題が発生する場合があることに注意してください。たとえば、spring-social-web は 1.8.3 バージョンには存在しない機能を使用する場合があります。

于 2013-05-15T16:20:21.333 に答える