将jar添加到scala类路径,对象不是包的成员

时间:2014-02-28 17:51:28

标签: scala jar import

我正在尝试使用scala进行kyro序列化。我在类路径中包含了.jar。

scalac -classpath *.jar *.scala

这给了我一个关于依赖库的错误:

$ scalac -classpath "*.jar" *.scala
warning: Class org.objenesis.strategy.InstantiatorStrategy not found - continuing with a stub.
error: error while loading Kryo, class file 'kryo-2.23.1-SNAPSHOT.jar(com/esotericsoftware/kryo/Kryo.class)' is broken
(class java.lang.NullPointerException/null)
one warning found
one error found

我也包括了那些:

scalac -classpath "*.jar:lib/*.jar" *.scala

现在我有这个错误:

$ scalac -classpath "*.jar:lib/*.jar" *.scala
test.scala:2: error: object esotericsoftware is not a member of package com
import com.esotericsoftware.kryo.Kryo
       ^
test.scala:7: error: not found: type Kryo
        val kryo = new Kryo
                       ^
two errors found

尝试使用.jar编译java文件很好:

javac -classpath *.jar *.java

为什么斯卡拉给我这么多麻烦?

1 个答案:

答案 0 :(得分:2)

使用-verbose查看scalac看到的类路径,以及从哪里加载类。

更多的建议而不是答案。