scala - 无法从手动创建的jar导入类,只能用eclipse创建的runnable jar

时间:2013-08-22 09:19:39

标签: class scala import jar


Scala提示允许我在Eclipse项目转为runnable-jar中使用我的Java类,但不是这样。怎么解决这个问题?我看到另一个SO答案说使用sbt,但为什么它适用于一个罐而不是另一个?如何使用我的.class或手动创建.jar?

使用命令: scala -cp ./MyClass.class
scala> import package.name.MyClass
<console>:7: error: not found: value package
好吧,让我们先说吧...... jar -cvf MyJar.jar MyClass.class
scala -cp ./MyJar.jar
......同样的结果
好吧...... scala -cp path/to/runnable_jar/created/from/eclipse.jar
scala> import package.name.MyClass
它有效!

1 个答案:

答案 0 :(得分:3)

看看如何安排Eclipse创建的jar文件(使用jar tf),并将其与您的文件进行比较。包裹路径很可能是错误的。

  

jar -cvf MyJar.jar MyClass.class

这不起作用,因为你需要将包路径保存为jar中的目录。

应为jar -cvf MyJar.jar package

  

scala -cp ./MyClass.class

这不起作用,因为classpath必须指向包含类的文件夹(从包根文件夹开始)或jar文件。

应该是scala -cp classes(并且类有一个文件夹“package”)。