2016-08-25 1 views
1

です。範囲構文を使用すると、SBTで依存関係を解決できないようです。sbt/ivyのバージョン範囲は解決しませんが、正確なバージョンは

ので

libraryDependencies ++= Seq(
    //exact version works i.e.  0.5.3+27 
    //but what we want to work is [0.5.3,) 
    //or I've since moved the build number to the 4th component 0.5.3.+ 
    "company"    %% "project"  % "0.5.3.+", 
    //... 
) 

私は正確なバージョンが正常に動作するために取得しないが、 https://ant.apache.org/ivy/history/2.3.0/ivyfile/dependency.html#revision またはhttp://www.scala-sbt.org/0.13/docs/Library-Management.html仕事上の例で指定されたバージョンの構文のどれもできます。

私は周りを見回したとSBT 0.13.9に入っここでこのような何かのための修正https://github.com/sbt/sbt/pull/2075があった、私は0.13.11を使用しています見つけました。

最初のバージョンの範囲は、そのせいでは動作しませんでしたときセマンティックバージョンがポイント10でのメタデータのために推奨しています何の私が使用していたもので、ライブラリmanagement docs/Ivy revision docsは+は、最新のサブリビジョンを選択して「リビジョンを終了言います依存モジュール "を使用しているため、問題を引き起こしていた場合は+を削除し、GoCDが提供するビルド番号だけの4番目のコンポーネントを追加しました。正確なバージョンは動作しますが、サブリビジョンは動作しません。 SBTでは

私は2つの形式のURLを参照してくださいすることができますがヒットしている:

  1. https://dl.bintray.com/<username> /内部リリース/ <namespace>/<project-name> _2.11/[revision]/<project-name> _2.11- [改訂版] .pom
  2. http://dl.bintray.com/
  3. <username> /内部リリース/ <namespace>/<project-name> _2.11/[revision] /ivys/ivy.xml

ここでは[revision]は、文字通りURLに印刷された内容です。山括弧内のものは私の代わりです。それで、なぜ私はissue 2005が関連していると思ったのですか? SBTリポジトリファイルがありません。

質問には、私は上記で何か間違っていますか?0.x.x.+のという構文でバージョン範囲の作業を取得するにはどうすればよいですか?

答えて

0

これを回避しました。 Bintrayディレクトリのリストに有効なHTTPリンク(バイナリの部分にアンチクローラの作業がありません)がありません。その結果、Ivyリゾルバは公開されたバージョンのリストを取得できません。

Ivyの代わりにmavenレイアウトを使用すると、Maven形式には利用可能なすべてのバージョンを一覧表示するmetadata.xmlが含まれているため、動作します。 回避策は、このメタデータを取得するために、Ivyの代わりにmavenレイアウトを使用してライブラリを再パブリッシュすることです。

関連する問題