Scala没有';无法从手动创建的包导入
我在Ubuntu上使用Scala。 有两个文件 文件a.scala:Scala没有';无法从手动创建的包导入,scala,import,package,Scala,Import,Package,我在Ubuntu上使用Scala。 有两个文件 文件a.scala: package ptest { class A() { def p = println ("A") } } 文件b.scala package ptest { import ptest.A ; class B() { def p = {print("B"); A.p} } } 编译b.scala时出现错误: $ scalac a.scala $ scalac b.scala b.scala:2: error: A is
package ptest { class A() { def p = println ("A") } }
文件b.scala
package ptest { import ptest.A ; class B() { def p = {print("B"); A.p} }
}
编译b.scala时出现错误:
$ scalac a.scala
$ scalac b.scala
b.scala:2: error: A is not a member of ptest
尽管.class在dictionary ptest中存储正确
有什么问题吗?必须将.class显式放置在类路径上:
scalac -classpath . b.scala
(如果.class不在当前目录中,则将其替换为包含该类的目录)
下一个问题是导入ptest.A,它没有做任何有用的事情,并产生警告。不需要导入您所在包的成员
A.p
产生错误A.p
意味着对值A
调用p
,但此时不存在值A
。有一个类a
,但是如果不先创建该类的实例,就无法访问该类的成员