我想在Scala项目中使用一个库,这个库的名称是jerkson。我可能会在项目的基本目录下添加以下内容到build.sbt
文件中:
libraryDependencies += "com.domain_example" % "library_name_test123" % "0.1.1"
但是我从哪里获取所有这些数据呢:域名、库名、版本?在https://github.com/randhindi/jerkson上没有这样的数据。
那我需要做什么才能使用它?
我想在Scala项目中使用一个库,这个库的名称是jerkson。我可能会在项目的基本目录下添加以下内容到build.sbt
文件中:
libraryDependencies += "com.domain_example" % "library_name_test123" % "0.1.1"
但是我从哪里获取所有这些数据呢:域名、库名、版本?在https://github.com/randhindi/jerkson上没有这样的数据。
那我需要做什么才能使用它?
com/codahale/jerkson_2.8.2/0.5.0
libraryDependencies += "com.codahale" % "jerkson_2.8.2" % "0.5.0"
如果您想要最新的集成版本,可以将latest.integration
作为第三个参数使用。
libraryDependencies += "com.codahale" % "jerkson_2.8.2" % "latest.integration"
一般来说,我会首先尝试使用Maven仓库。
这是 Maven 仓库的样子:
这很好,因为你可以看到一个 sbt 的选项卡,并且你可以直接将其复制到你的代码中。不幸的是,我没有在 Maven 中找到你想要的库。
[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
git clone https://github.com/randhindi/jerkson.git
。你所说的“从GitHub使用它”是什么意思?你需要特别的东西吗? - Ezhikpublish-local
命令会将结果保存到位于你主目录下的 .ivy2 目录中(通常如此)。 - Ezhik
github.com/randhindi/jerkson
有关。如果您查看https://github.com/randhindi/jerkson/blob/master/src/main/java/com/codahale/jerkson/JsonSnakeCase.java
中的包语句,我认为它们是相同的。 - Mingyu“com.codahale”%“jerkson_2.8.2”%“0.5.0”
,它在哪里写明了? - user266003