我是Scala和SBT的新手。我正在找NullPointerException,请帮帮忙。
.profile
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
export PYSPARK_PYTHON=/Library/Frameworks/Python.framework/Versions/3.5/bin/python3
export SPARK_HOME=/Softwares/spark
export R="/Library/Frameworks/R.framework/Resources"
export PATH=$PATH:$PYSPARK_PYTHON:$SPARK_HOME:$R哪个scala
/usr/local/bin/scalascala -version
cat: /release: No such file or directory
Scala code runner version 2.12.1 -- Copyright 2002-2016, LAMP/EPFL and Lightbend, Inc.哪个sbt
/usr/local/bin/sbtsbt关于这是sbt 0.13.13
我创建了一个包含以下内容的文件夹FirstScala/src/main/First/First.scala
object First
{
def main(args:Array[String]) {
println("First Scala Hello World");
}
}build.sbt
name := "first_scala"
version := "1.0"
scalaVersion := "2.12.1"现在,在FirstScala文件夹中,我运行sbt包。生成.jar文件。但当我跑
scala target/scala-2.12/first_scala_2.12-1.0.jar 我得到以下错误
java.lang.NullPointerException
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at scala.reflect.internal.util.ScalaClassLoader.$anonfun$tryClass$1(ScalaClassLoader.scala:44)
at scala.util.control.Exception$Catch.$anonfun$opt$1(Exception.scala:242)
at scala.util.control.Exception$Catch.apply(Exception.scala:224)
at scala.util.control.Exception$Catch.opt(Exception.scala:242)
at scala.reflect.internal.util.ScalaClassLoader.tryClass(ScalaClassLoader.scala:44)
at scala.reflect.internal.util.ScalaClassLoader.tryToInitializeClass(ScalaClassLoader.scala:40)
at scala.reflect.internal.util.ScalaClassLoader.tryToInitializeClass$(ScalaClassLoader.scala:40)
at scala.reflect.internal.util.ScalaClassLoader$URLClassLoader.tryToInitializeClass(ScalaClassLoader.scala:129)
at scala.reflect.internal.util.ScalaClassLoader.run(ScalaClassLoader.scala:91)
at scala.reflect.internal.util.ScalaClassLoader.run$(ScalaClassLoader.scala:90)
at scala.reflect.internal.util.ScalaClassLoader$URLClassLoader.run(ScalaClassLoader.scala:129)
at scala.tools.nsc.CommonRunner.run(ObjectRunner.scala:22)
at scala.tools.nsc.CommonRunner.run$(ObjectRunner.scala:21)
at scala.tools.nsc.JarRunner$.run(MainGenericRunner.scala:13)
at scala.tools.nsc.CommonRunner.runAndCatch(ObjectRunner.scala:29)
at scala.tools.nsc.CommonRunner.runAndCatch$(ObjectRunner.scala:28)
at scala.tools.nsc.JarRunner$.runAndCatch(MainGenericRunner.scala:13)
at scala.tools.nsc.JarRunner$.runJar(MainGenericRunner.scala:25)
at scala.tools.nsc.MainGenericRunner.runTarget$1(MainGenericRunner.scala:65)
at scala.tools.nsc.MainGenericRunner.run$1(MainGenericRunner.scala:88)
at scala.tools.nsc.MainGenericRunner.process(MainGenericRunner.scala:99)
at scala.tools.nsc.MainGenericRunner$.main(MainGenericRunner.scala:104)
at scala.tools.nsc.MainGenericRunner.main(MainGenericRunner.scala)提前谢谢。
发布于 2017-03-21 17:28:41
src/main/scala/First.scala,因为默认情况下,sbt需要此目录结构。First)的名称。参见在http://alvinalexander.com/scala/how-to-run-scala-sbt-packaged-jar-file-with-java-command上使用Java运行JAR的示例
您也可以使用Scala运行JAR,但是仍然需要指定类路径和对象名:http://alvinalexander.com/scala/how-to-run-scala-application-jar-files-set-classpath。
发布于 2018-05-30 13:44:12
导出JAVA_HOME="$(/usr/libexec/java_home -v 1.8)“
https://stackoverflow.com/questions/42933898
复制相似问题