繼https://github.com/magarciaEPFL/scaladotnet的README創建一個簡單的 「Hello World」 的應用程序在Windows EXE:斯卡拉.Net的HelloWorld的
package hello.world
object Main {
def main(args: Array[String]) {
println("Hello, World!")
}
}
內置的.exe從README命令:
scalacompiler.exe^
-d C:\test\bin^
-target:exe^
-Ystruct-dispatch:no-cache^
-Xassem-name HelloWorld.exe^
-Xassem-extdirs C:\scala.net^
-Xshow-class hello.world.Main^
C:\test\src\HelloWorld.scala
在使用Windows 7 Pro,64位時,嘗試運行時收到此錯誤:
C:\ test \ bin> HelloWorld.exe
未處理的異常:System.IO.FileNotFoundException:未能加載 文件或程序集scalalib,版本= 0.0.0.0,文化=中性, 公鑰=空'或它的一個依賴。系統不能 找到指定的文件。在Main(String [] args)
Scala .Net編譯器目錄直接在路徑中,但似乎HelloWorld.exe無法找到並加載該目錄中的scalalib.dll。根據下面的註釋,將HelloWorld.exe直接複製到C:\ scala.net目錄並從那裏執行,按預期工作。但是,將.exe放入另一個目錄,並將C:\ scala.net目錄作爲PATH的一部分,則不會。
有什麼不對?
分享你的代碼。 – JSJ 2012-08-01 13:22:52
HelloWorld.exe和scalalib.dll位於相同的文件夾中? – hmqcnoesy 2012-08-01 13:51:23
不,HelloWorld.exe位於C:\ test \ bin \中,而scalalib.dll位於C:\ scala.net \中,C:\ scala.net是該路徑的一部分。我期望找到.dll文件,位於路徑中的一個目錄中。 – 2012-08-01 13:55:50