我想在64位Ubuntu上与Scala一起使用Jcurses。不幸的是,我没有找到任何关于这个主题的教程。有人能帮我吗!
我的测试程序"testjcurses.scala“
import jcurses.system._
object TestJcurses {
def main(args:Array[String]) {
println("okay")
Toolkit.init()
}
}我处理它的方式如下:
fsc -cp ~/software/Java/jcurses/lib/jcurses.jar:~/software/Java/jcurses/src -d . -Djava.library.path=~/software/Java/jcurses/lib testjcurses.scala
scala -cp ~/software/Java/jcurses/lib/jcurses.jar:~/software/Java/jcurses/src:. -Djava.library.path=~/software/Java/jcurses/lib TestJcurses结果是:
okay
java.lang.NullPointerException
at jcurses.system.Toolkit.getLibraryPath(Toolkit.java:97)
at jcurses.system.Toolkit.<clinit>(Toolkit.java:37)
at TestJcurses$.main(testjcurses.scala:9)
at TestJcurses.main(testjcurses.scala)
..........有人能帮我吗?
发布于 2014-08-24 07:52:31
不幸的是,您不能这样在bash中使用~ -- ~只是在一个(未引用的)空间之后才被扩展到您的主dir (从技术上讲,在bash单词的开头,但是"after a space“是简单的版本)。查看命令行是如何展开的:
$ echo scala -cp ~/software/Java/jcurses/lib/jcurses.jar:~/software/Java/jcurses/src:. -Djava.library.path=~/software/Java/jcurses/lib TestJcurses
scala -cp /Users/pgiarrusso/software/Java/jcurses/lib/jcurses.jar:~/software/Java/jcurses/src:. -Djava.library.path=~/software/Java/jcurses/lib TestJcurses正如您所看到的,~在扩展的版本中,并将不改变地到达您的程序,程序将无法将其解释为任何东西,因为tilde扩展是shell的一项工作。
此外,您不应该需要类路径中的源目录~/software/Java/jcurses/src (因为运行程序不需要源文件)。所以试着:
scala -cp ~/software/Java/jcurses/lib/jcurses.jar:. -Djava.library.path=$HOME/software/Java/jcurses/lib TestJcurseshttps://stackoverflow.com/questions/25344587
复制相似问题