我想在Scala项目中使用https://github.com/randhindi/jerkson库。我可能会将这样的内容添加到位于项目基本目录中的build.sbt
:
libraryDependencies += "com.domain_example" % "library_name_test123" % "0.1.1"
但是我从哪里获得所有这些数据:域名,库名,版本? https://github.com/randhindi/jerkson
没有此类数据那么我需要做些什么呢?
答案 0 :(得分:6)
这是 Typesafe存储库的链接,这是由Typesafe维护的官方存储库:
http://repo.typesafe.com/typesafe/webapp/browserepo.html?2
在搜索框中输入 jerkson ,它会显示存储库中托管的所有相关项目。
您应该能够看到路径,例如:
com/codahale/jerkson_2.8.2/0.5.0
您可以将其分解为3个组件。
试试这个:
libraryDependencies += "com.codahale" % "jerkson_2.8.2" % "0.5.0"
如果您想要最新的集成,可以使用latest.integration
作为第三个参数
libraryDependencies += "com.codahale" % "jerkson_2.8.2" % "latest.integration"
一般情况下,我会首先尝试 Maven存储库。
这是Maven存储库的样子:
http://mvnrepository.com/artifact/com.bealetech/metrics-statsd/2.3.0
这很好,因为你可以看到sbt的标签,你可以简单地将它复制到你的代码中。不幸的是,我没有在Maven中看到你想要的库。
答案 1 :(得分:3)
根据您对其他答案的评论,我相信您要做的是直接指定github URL的依赖关系。这是asked before。这两个答案都是正确的,应该对您有用。
答案 2 :(得分:0)
如果您不想调查构建配置,那么您可以克隆存储库并执行publish-local
。将有工件信息。您还要将工件添加到本地Ivy存储库。在这种情况下:
[info] published jerkson_2.10 to /home/ezh/.ivy2/local/jerkson/jerkson_2.10/0.1-SNAPSHOT/...
在你的情况下
"jerkson" %% "jerkson" % "0.1-SNAPSHOT"
或
"jerkson" % "jerkson_2.10" % "0.1-SNAPSHOT"
针对Scala 2.10构建的库
完整日志:
ezh@devbox ~/ze $ git clone https://github.com/randhindi/jerkson.git
Cloning into 'jerkson'...
remote: Counting objects: 3093, done.
remote: Compressing objects: 100% (1203/1203), done.
remote: Total 3093 (delta 984), reused 2863 (delta 790)
Receiving objects: 100% (3093/3093), 436.47 KiB | 177 KiB/s, done.
Resolving deltas: 100% (984/984), done.
ezh@devbox ~/ze $ cd jerkson/
ezh@devbox ~/ze/jerkson $ sbt-0.12 publish-local
[info] Loading project definition from /home/ezh/ze/jerkson/project
[info] Updating {file:/home/ezh/ze/jerkson/project/}default-b33f9c...
[info] Resolving org.scala-sbt#precompiled-2_10_1;0.12.4-RC1 ...
[info] Done updating.
[info] Compiling 1 Scala source to /home/ezh/ze/jerkson/project/target/scala-2.9.2/sbt-0.12/classes...
[info] Set current project to jerkson (in build file:/home/ezh/ze/jerkson/)
[info] Updating {file:/home/ezh/ze/jerkson/}jerkson...
[info] Packaging /home/ezh/ze/jerkson/target/scala-2.10/jerkson_2.10-0.1-SNAPSHOT-sources.jar ...
[info] Wrote /home/ezh/ze/jerkson/target/scala-2.10/jerkson_2.10-0.1-SNAPSHOT.pom
[info] Resolving org.scala-lang#scala-library;2.10.0 ...
[info] Done packaging.
[info] Resolving org.hamcrest#hamcrest-core;1.1 ...
[info] downloading http://oss.sonatype.org/content/groups/public/com/fasterxml/jackson/core/jackson-core/2.1.1/jackson-core-2.1.1.jar ...
[info] [SUCCESSFUL ] com.fasterxml.jackson.core#jackson-core;2.1.1!jackson-core.jar (2325ms)
[info] downloading http://oss.sonatype.org/content/groups/public/com/fasterxml/jackson/core/jackson-databind/2.1.1/jackson-databind-2.1.1.jar ...
[info] [SUCCESSFUL ] com.fasterxml.jackson.core#jackson-databind;2.1.1!jackson-databind.jar (2351ms)
[info] downloading http://oss.sonatype.org/content/groups/public/org/mockito/mockito-all/1.9.0/mockito-all-1.9.0.jar ...
[info] [SUCCESSFUL ] org.mockito#mockito-all;1.9.0!mockito-all.jar (7677ms)
[info] downloading http://oss.sonatype.org/content/groups/public/junit/junit/4.10/junit-4.10.jar ...
[info] [SUCCESSFUL ] junit#junit;4.10!junit.jar (1337ms)
[info] downloading http://oss.sonatype.org/content/groups/public/com/fasterxml/jackson/core/jackson-annotations/2.1.1/jackson-annotations-2.1.1.jar ...
[info] [SUCCESSFUL ] com.fasterxml.jackson.core#jackson-annotations;2.1.1!jackson-annotations.jar (1384ms)
[info] Done updating.
[info] :: delivering :: jerkson#jerkson_2.10;0.1-SNAPSHOT :: 0.1-SNAPSHOT :: integration :: Sun Jun 02 09:22:19 MSK 2013
[info] delivering ivy file to /home/ezh/ze/jerkson/target/scala-2.10/ivy-0.1-SNAPSHOT.xml
[info] Compiling 77 Scala sources and 1 Java source to /home/ezh/ze/jerkson/target/scala-2.10/classes...
[info] Generating Scala API documentation for main sources to /home/ezh/ze/jerkson/target/scala-2.10/api...
[info] 'compiler-interface' not yet compiled for Scala 2.10.0. Compiling...
[info] Compilation completed in 10.168 s
[warn] there were 51 feature warnings; re-run with -feature for details
model contains 312 documentable templates
[warn] /home/ezh/ze/jerkson/src/main/scala/com/codahale/jerkson/util/scalax/rules/Rules.scala:67: Tag '@requires' is not recognised
[warn] /A factory for rules that apply to a particular context.
[warn] ^
[warn] two warnings found
[info] Scala API documentation generation successful.
[info] Packaging /home/ezh/ze/jerkson/target/scala-2.10/jerkson_2.10-0.1-SNAPSHOT-javadoc.jar ...
[info] Done packaging.
[warn] there were 17 deprecation warnings; re-run with -deprecation for details
[warn] there were 1 unchecked warnings; re-run with -unchecked for details
[warn] there were 51 feature warnings; re-run with -feature for details
[warn] three warnings found
[warn] Error reading API from class file : java.lang.UnsupportedClassVersionError: com/codahale/jerkson/JsonSnakeCase : Unsupported major.minor version 51.0
[info] Packaging /home/ezh/ze/jerkson/target/scala-2.10/jerkson_2.10-0.1-SNAPSHOT.jar ...
[info] Done packaging.
[info] published jerkson_2.10 to /home/ezh/.ivy2/local/jerkson/jerkson_2.10/0.1-SNAPSHOT/poms/jerkson_2.10.pom
[info] published jerkson_2.10 to /home/ezh/.ivy2/local/jerkson/jerkson_2.10/0.1-SNAPSHOT/jars/jerkson_2.10.jar
[info] published jerkson_2.10 to /home/ezh/.ivy2/local/jerkson/jerkson_2.10/0.1-SNAPSHOT/srcs/jerkson_2.10-sources.jar
[info] published jerkson_2.10 to /home/ezh/.ivy2/local/jerkson/jerkson_2.10/0.1-SNAPSHOT/docs/jerkson_2.10-javadoc.jar
[info] published ivy to /home/ezh/.ivy2/local/jerkson/jerkson_2.10/0.1-SNAPSHOT/ivys/ivy.xml
[success] Total time: 56 s, completed 02.06.2013 9:22:48