2016-10-08 4 views
1

ブート-CLJを「バージョンの競合検出」起動時にバージョンの競合に関する警告の多くを示しています。彼らは、次のようになります。ブート-CLJは:取り除く

Warning: version conflict detected: org.clojure/clojure version changes from 1.5.1 to 1.8.0 
Warning: version conflict detected: clj-time version changes from 0.8.0 to 0.12.0 
Warning: version conflict detected: riddley version changes from 0.1.7 to 0.1.12 
Warning: version conflict detected: org.codehaus.plexus/plexus-utils version changes from 2.0.7 to 2.0.6 
Warning: version conflict detected: org.clojure/tools.namespace version changes from 0.2.11 to 0.2.10 
Warning: version conflict detected: com.fasterxml.jackson.core/jackson-core version changes from 2.1.1 to 2.3.2 

私はかなりなぜ時々理解していませんよ最初のバージョンは他のバージョンより低く、逆も同様です。私は彼らのほとんどに影響を与えることができないとも見える。たとえば、私のプロジェクトではclj-timeがバージョン0.12.0であることが必要なので、別のバージョンではclj-timeが必要なライブラリの警告が表示されると思います。

これを修正する方法はありますか、「-q」フラグを使用して「出力からの出力を抑止する」ことはできますか?これは他のおそらくより重要な出力が表示されるのを防ぐでしょうか?

+1

あなたは '-d'フラグを使用しようとしましたか? – guijob

+0

不足している依存関係を手動で追加することを意味しますか? –

答えて

2

例:

ファイル/tmp/stackoverflow/boot.build:ターミナルで

(set-env! :dependencies '[[clj-time "0.12.0"] 
          [joda-time "2.9.4"]]) 

[email protected] /tmp/stackoverflow $ boot show -d 
Warning: version conflict detected: joda-time version changes from 2.9.3 to 2.9.4 
Warning: version conflict detected: joda-time version changes from 2.9.3 to 2.9.4 
[clj-time "0.12.0"] 
└── [org.clojure/clojure "1.8.0"] 
[joda-time "2.9.4"] 
[email protected] /tmp/stackoverflow $ boot show -p 
Warning: version conflict detected: joda-time version changes from 2.9.3 to 2.9.4 
Warning: version conflict detected: joda-time version changes from 2.9.3 to 2.9.4 
[✔] joda-time 
    ✔ 2.9.4 
     joda-time 
    ✘ 2.9.3 
     clj-time 

ので、boot show -dはあなたに効果的な推移依存関係ツリーを教えてくれます。 boot show -pは競合の詳細を示します。ここでは、joda-timeの依存関係はjoda-time 2.9.4になりますが、それはclj-timeと矛盾しており、joda-time 2.9.3を取得しようとしています。

joda-timeに直接依存するのではなく、他のライブラリfoojoda-time 2.9.4に依存)を使用しているとします。 clj-time[clj-time "0.12.0" :exclusions [joda-time]]の除外を使用してこの警告を取り除くと、警告なしに2.9.4がプロジェクトに追加されます。

+0

私はまだそれを取得していません。ブートショーcljs-timeはツリー内で1回だけです:[clj-time "0.12.0"] .. 0.8.0からの警告はどこですか? +除外の意味は? –

関連する問題