![](/img/trans.png)
[英]Mapreduce using Scala Error: java.lang.ClassNotFoundException: scala.Predef$
[英]ClassNotFoundException:scala.PreDef$ issue
我正在尝试通过 Eclipse 的导出功能打包一个用 Scala 编写的简单可执行 Jar。
尝试从 cmd java -jar test2.jar
执行 Jar 时
我收到以下错误。 有任何想法吗? 谢谢你。
Caused by: java.lang.NoClassDefFoundError: scala/Predef$
at Parser.Test(Parser.scala:5)
at Main.main(Main.java:12)
... 5 more
Caused by: java.lang.ClassNotFoundException: scala.Predef$
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 7 more
您只需要将 Scala 库 jar 添加到类路径。
您可以这样做(假设“scala-library.jar”jar 在当前目录中):
java -cp scala-library.jar -jar test2.jar
可以在此处找到有关java
comamnd 的文档: http : //docs.oracle.com/javase/6/docs/technotes/tools/windows/java.html
对我来说,我使用的是 jdk 11 和 scala 库容器 2.12.3,当我更改为 jdk 8 时,它工作正常,这是因为 jdk11 scala 版本支持JDK 兼容性
右键项目,构建路径,配置构建路径,将你的jdk编辑为小于11
您还可以将 Scala 库与您的项目打包在一起。 看到这个帖子
我确实从项目中删除了“ Scala 库容器”。 下一步-添加需要Scala的库(斯卡拉-library.jar)到Java构建路径(在属性)为“添加外部JAR ...”在我的图书馆(不作为参考斯卡拉LIB)。 并将它们全部包含到“订购和导出”最后- 使用选项“将所需的库打包到生成 JAR 中”为项目进行导出,这很好用:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.