ここにScalaとsbt newbieがあります。私はMongoDBのを照会し、マップとして結果を返すためにMavenプロジェクトのScala jar:org.mongodb:casbah_2.12:jar:3.1.1の検索に失敗しました
libraryDependencies += "org.mongodb" %% "casbah" % "3.1.1"
カスバ使用スカラのsbtプロジェクトを作成しました。 Java Mavenプロジェクトでこのコードを使用して、データベースのクエリから得られた結果を操作したいと考えています。
私はbuild.sbtファイルにこれを追加しました:私の.m2ローカルレポでjarファイルをインストールする
publishMavenStyle := true
publishTo := Some(Resolver.file("file", new File(Path.userHome.absolutePath + "/.m2/repository")))
。私はsbt publish
を行うときにここでの出力は次のようになります。
> publish
[info] Packaging /Users/miguelvelez/Documents/Programming/Scala/Projects/mongo/target/scala-2.12/mongo_2.12-0.1.0-SNAPSHOT-sources.jar ...
[info] Done packaging.
[info] Main Scala API documentation to /Users/miguelvelez/Documents/Programming/Scala/Projects/mongo/target/scala-2.12/api...
[info] Packaging /Users/miguelvelez/Documents/Programming/Scala/Projects/mongo/target/scala-2.12/mongo_2.12-0.1.0-SNAPSHOT.jar ...
[info] Done packaging.
[info] Wrote /Users/miguelvelez/Documents/Programming/Scala/Projects/mongo/target/scala-2.12/mongo_2.12-0.1.0-SNAPSHOT.pom
[info] :: delivering :: edu.cmu.cs.mvelezce#mongo_2.12;0.1.0-SNAPSHOT :: 0.1.0-SNAPSHOT :: integration :: Sun Apr 09 13:58:46 EDT 2017
[info] delivering ivy file to /Users/miguelvelez/Documents/Programming/Scala/Projects/mongo/target/scala-2.12/ivy-0.1.0-SNAPSHOT.xml
model contains 9 documentable templates
[info] Main Scala API documentation successful.
[info] Packaging /Users/miguelvelez/Documents/Programming/Scala/Projects/mongo/target/scala-2.12/mongo_2.12-0.1.0-SNAPSHOT-javadoc.jar ...
[info] Done packaging.
[info] published mongo_2.12 to /Users/miguelvelez/.m2/repository/edu/cmu/cs/mvelezce/mongo_2.12/0.1.0-SNAPSHOT/mongo_2.12-0.1.0-SNAPSHOT.pom
[info] published mongo_2.12 to /Users/miguelvelez/.m2/repository/edu/cmu/cs/mvelezce/mongo_2.12/0.1.0-SNAPSHOT/mongo_2.12-0.1.0-SNAPSHOT.jar
[info] published mongo_2.12 to /Users/miguelvelez/.m2/repository/edu/cmu/cs/mvelezce/mongo_2.12/0.1.0-SNAPSHOT/mongo_2.12-0.1.0-SNAPSHOT-sources.jar
[info] published mongo_2.12 to /Users/miguelvelez/.m2/repository/edu/cmu/cs/mvelezce/mongo_2.12/0.1.0-SNAPSHOT/mongo_2.12-0.1.0-SNAPSHOT-javadoc.jar
[success] Total time: 3 s, completed Apr 9, 2017 1:58:49 PM
私はその後、私のポンポンファイルにこの依存関係をインポート:
<dependency>
<groupId>edu.cmu.cs.mvelezce</groupId>
<artifactId>mongo_2.12</artifactId>
<version>0.1.0-SNAPSHOT</version>
</dependency>
私はmvn compile
を実行すると、私は次のエラーを取得する:
[ERROR] Failed to execute goal on project performance-mapper: Could not resolve dependencies for project edu.cmu.cs.mvelezce:performance-mapper:jar:0.1.0-SNAPSHOT: Failure to find org.mongodb:casbah_2.12:jar:3.1.1 in https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced -> [Help 1]
私はcasbahがいくつかのモジュールを持っていることを知っています。しかし、Casbahの文書に従って、私はenterieライブラリを追加します。私はまたMaven Centralを見て、このバージョンのcasbahには瓶がありません。独立したモジュールのみ。私はそれらのモジュールのいくつかをpomに追加しましたが、私はまだ上記と同じエラーがあります。 Mavenは完全なjarファイルを探しています。
これを修正する方法はありますか?私はbuild.sbtファイルに必要なScalaの依存関係を追加することしかできないと思っていましたが、私が行ったときにコンパイルエラーが発生しました。誰にも疑惑はありますか?
ありがとうございます!
ローカルのpomファイルに依存関係としてCasbahを含める必要があります。 – Ross
また、ローカルのpom.xmlで、依存関係タイプを 'pom'と設定します。 – Ross
@Ross 2つの提案はjavaプロジェクトにありますか? –