在https://github.com/magarciaEPFL/scaladotnet上阅读README,为简单的"Hello World"应用创建一个Windows exe:
package hello.world
object Main {
def main(args: Array[String]) {
println("Hello, World!")
}
}
Run Code Online (Sandbox Code Playgroud)
使用自述文件中的命令构建.exe:
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
Run Code Online (Sandbox Code Playgroud)
在使用Windows 7 Pro,64位时,我在尝试运行时收到此错误:
C:\测试\ BIN> HelloWorld.exe的
未处理的异常:System.IO.FileNotFoundException:无法加载文件或程序集'scalalib,Version = 0.0.0.0,Culture = neutral,PublicKeyToken = null'或其依赖项之一.该系统找不到指定的文件.在Main(String [] args)
Scala .Net编译器目录直接位于路径中,但似乎HelloWorld.exe无法找到并加载该目录中的scalalib.dll.根据下面的注释,将HelloWorld.exe直接复制到C:\ scala.net目录,然后从那里执行,按预期工作.但是,将.exe放在另一个目录中,而将C:\ scala.net目录作为PATH的一部分,则不会.
怎么了?