scala腳本有一個適度的-debug
選項。
使用-Ylog-classpath
來查看編譯器正在使用什麼。使用來說「沒有編譯服務器守護進程」。
使用fsc -shutdown
重新開始。
軟件包的變化是令人厭惡的,因此包名稱或舊包對象等路徑中的意外目錄導致無法解釋的構建問題。使用PathResolver
來轉儲它看到的類路徑。
包名稱的空目錄可能會影響包發現。
${SCALA_HOME}/bin/scala -cp "${classpath}" scala.tools.util.PathResolver
${SCALA_HOME}/bin/scala -cp "${classpath}" scala.tools.util.PathResolver some-args
你會看到類似這樣的:
[email protected]:~/tmp/scripts$ ./foo.sh
object Environment {
scalaHome = /media/Software/scala-2.10.1 (useJavaClassPath = true)
javaBootClassPath = <1122 chars>
javaExtDirs =
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext
/usr/java/packages/lib/ext
javaUserClassPath = ""
scalaExtDirs =
}
object Defaults {
scalaHome = /media/Software/scala-2.10.1
javaBootClassPath =
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/resources.jar
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/sunrsasign.jar
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jsse.jar
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jce.jar
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/charsets.jar
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/netx.jar
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/plugin.jar
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rhino.jar
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jfr.jar
/usr/lib/jvm/java-7-openjdk-amd64/jre/classes
/media/Software/scala-2.10.1/lib/akka-actors.jar
/media/Software/scala-2.10.1/lib/jline.jar
/media/Software/scala-2.10.1/lib/scala-actors.jar
/media/Software/scala-2.10.1/lib/scala-actors-migration.jar
/media/Software/scala-2.10.1/lib/scala-compiler.jar
/media/Software/scala-2.10.1/lib/scala-library.jar
/media/Software/scala-2.10.1/lib/scala-partest.jar
/media/Software/scala-2.10.1/lib/scalap.jar
/media/Software/scala-2.10.1/lib/scala-reflect.jar
/media/Software/scala-2.10.1/lib/scala-swing.jar
/media/Software/scala-2.10.1/lib/typesafe-config.jar
scalaLibDirFound = Some(/media/Software/scala-2.10.1/lib)
scalaLibFound = /media/Software/scala-2.10.1/lib/scala-library.jar
scalaBootClassPath =
scalaPluginPath = /media/Software/scala-2.10.1/misc/scala-devel/plugins
}
COMMAND: 'scala some-args'
RESIDUAL: 'scala some-args'
什麼?我回答了你的問題,你沒有給予綠色檢查?儘管我發現scala工具本質上很有趣,但這種情況對我說:「我不需要你的幫助。」 –
@ som-snytt,PathResolver沒有解決問題。複製我在這裏發佈的答案,我會刪除我的並檢查你的(如果系統仍然允許我這樣做)。你還會注意到,我檢查了你的評論,導致我的答案,我特別要求你創建自己的答案。我等待着你的回答,但從未見過一個(相反,你評論說'爲你感到高興'),所以我創造了我自己的。我很感謝您的幫助,並很樂意爲您提供信用。 –
@ som-snytt,順便說一句,我試着在我的評論中給你貼上標籤,但是如果它直接面向答案所有者,它似乎會消滅標籤。 –