我是scala的新手。并尝试执行swing应用程序。 我正在使用scala 2.8 我已成功编译该程序,但.. 执行它时显示的错误就像没有这样的文件.. 任何1请帮助我吗?
我提供了我想要执行的代码。
Gui.scala
import swing._
object Gui extends SimpleSwingApplication
{
def top=new MainFrame {
title="swing"
val b1=new Button{
text = "ok"
}
}
}
scalac Gui.scala
它成功编译并创建类文件 但是当我尝试
时scala Gui
它只是回复
没有这样的文件
答案 0 :(得分:2)
设定:
D:\src\scala_ex\ex1>dir
Volume in drive D is Data
Volume Serial Number is 5C88-8D6C
Directory of D:\src\scala_ex\ex1
01.12.2010 09:25 <DIR> .
01.12.2010 09:25 <DIR> ..
01.12.2010 09:24 173 gui.scala
1 File(s) 173 bytes
2 Dir(s) 24 575 205 376 bytes free
D:\src\scala_ex\ex1>more gui.scala
import swing._
object Gui extends SimpleSwingApplication {
def top = new MainFrame {
title = "swing"
val b1 = new Button{
text = "ok"
}
}
}
D:\src\scala_ex\ex1>scalac -version
Scala compiler version 2.8.1.final -- Copyright 2002-2010, LAMP/EPFL
编译:
D:\src\scala_ex\ex1>scalac gui.scala
D:\src\scala_ex\ex1>dir
Volume in drive D is Data
Volume Serial Number is 5C88-8D6C
Directory of D:\src\scala_ex\ex1
01.12.2010 09:26 <DIR> .
01.12.2010 09:26 <DIR> ..
01.12.2010 09:26 485 Gui$$anon$1$$anon$2.class
01.12.2010 09:26 557 Gui$$anon$1.class
01.12.2010 09:26 558 Gui$.class
01.12.2010 09:26 1 467 Gui.class
01.12.2010 09:24 173 gui.scala
5 File(s) 3 240 bytes
2 Dir(s) 24 575 201 280 bytes free
执行:
D:\src\scala_ex\ex1>scala -cp . Gui
应用程序启动。
答案 1 :(得分:1)
这不是Scala代码的直接剪切和粘贴,因为object Gui
和{
之间的空行会导致编译错误。
现在,如果您修复了该错误并使用Scala 2.8进行编译,那么您应该在本地目录中获取这些类:
如果不这样做,则编辑不起作用,或者缺少其他内容。例如,如果您在顶部声明了package X
(并从示例中删除了它),那么Gui
将不在本地目录中,而是在子目录X下,您应该调用它输入scala X.Gui
。
另一种可能性是你有一些Java环境变量将输出目录指向其他地方。