即使看完了:
Scala,problem with a jar file,我仍然有点困惑.我试图将一些包导入我的Scala文件,即使添加到classpath后,解释器也无法识别它们.
一个例子:
我有import语句:
import org.json4s._
我从这里下载了.jar:http://mvnrepository.com/artifact/org.json4s/json4s-native_2.10/3.2.4
并使用以下命令添加到解释器类路径:
scala> :cp /Users/aspangher13/Downloads/json4s-native_2.10-3.2.4.jar
Scala承认类路径:
Your new classpath is: ".:/Users/aspangher13/Downloads/json4s-native_2.10-3.2.4.jar:/Users/aspangher13/Downloads/jna-3.5.2.jar"
但仍然抛出这个错误:
<console>:7: error: object scalatra is not a member of package org import org.json4s._
谁能看到我做错了什么?谢谢!!
作为后续,有谁知道在哪里找到包:JsonAST._?
解决方法
去简单,创建一个小的sbt项目.
第一步 – 创建一个项目
出于您的目的,您不需要复杂的构建.所以只需创建两个文件:
./build.sbt
name := "name your project" version := "0.1" scalaVersion := "2.10.2" // or whatever you prefer
./project/build.properties
sbt.version=0.12.4
第二步 – 添加依赖项
libraryDependency ++= Seq( "org.scalatra" %% "scalatra" % "2.2.1","org.scalatra" %% "scalatra-scalate" % "2.2.1","org.scalatra" %% "scalatra-specs2" % "2.2.1" % "test","org.json4s" %% "json4s-native % "3.2.4","net.java.dev.jna" & "jna" & "3.5.2" )
第三步 – 运行控制台
不要忘记使用重新加载任务重新加载sbt,然后调用console或console-quick任务.这应该工作.
但是有更简单的方法可以做到这一点:
1)使用gitter8 – Scalatra gitter8 project
2)阅读关于Scalatra sbt dependencies的内容