2017-02-13 3 views
0

私はこの依存関係ツリーを私のgradleに持っています。 私はaxis2-xmlbeans-1.6.1を依存関係のセクションに含めました。これにより私のプロジェクトには、私が望まない​​も含まれています。gradle.buildのaxis2から依存関係サーブレット-apiを削除する方法

私はそれを依存関係から削除しようとしましたが、動作しません。 gradle dependencies

dependencies { 
    compile('org.apache.axis2:axis2-xmlbeans:1.6.1'){ 
      //exclude module: 'javax.servlet:servlet-api:2.3' 
      exclude group: 'javax.servlet' , module: 'servlet-api' 
    } 
... 
} 

結果:

+--- org.apache.axis2:axis2-xmlbeans:1.6.1 [default] 
| +--- org.apache.axis2:axis2-codegen:1.6.1 [compile,master,runtime] 
| | +--- org.apache.axis2:axis2-kernel:1.6.1 [compile,master,runtime] 
| | | +--- org.apache.ws.commons.axiom:axiom-api:1.2.12 [compile,master,runtime] 
| | | | +--- jaxen:jaxen:1.1.6 [compile,master,runtime] 
| | | | +--- ..... 
| | | +--- javax.servlet:servlet-api:2.3 [compile,master,runtime] 

はあなたが解決策を知っていますか?

答えて

1

あなたの例は、問題を再現するのに十分ではありません。私は、このスクリプトにgradle dependenciesを実行しました:

apply plugin: "java" 

repositories { 
    mavenCentral() 
} 

dependencies { 
    compile('org.apache.axis2:axis2-xmlbeans:1.6.1') { 
     //exclude module: 'javax.servlet:servlet-api:2.3' 
     exclude group: 'javax.servlet', module: 'servlet-api' 
    } 
} 

とNO servlet-apiはありません。依存関係が別の設定から入る可能性があります(master、あなたのカスタム設定のように見えます)。そこから削除したり、すべての設定から依存関係を削除したりすることができます。

configurations { 
    master 
    all*.exclude group: 'javax.servlet', module: 'servlet-api' 
} 
+0

あなたの設定..masterはservlet-apiを排除するのに役立ちます。ありがとう。また、gradleの依存関係を実行し、servlet-apiがaxis2のみに依存することを確認してください。 – David

関連する問題