我正在尝试从它们的包文件夹中编译 scala 文件。所以我有三个文件,Patient.scala
,PatientMonitor.scala
和VitalSigns.scala
,它们都位于以下路径中gasguru/patient/
这是我的文件VitalSigns.scala
// /gasguru/patient/VitalSigns.scala
package gasguru.patient
class VitalSigns () {
var heartRate = 0;
}
我用以下行编译它:scalac -d ../.. VitalSigns.scala
这导致VitalSigns.class
文件被创建在与我当前所在的目录相同的目录中。
现在,如果我去编译Patient.scala
其中包含以下内容:
// /gasguru/patient/Patient.scala
import gasguru.patient.VitalSigns;
package gasguru.patient {
class Patient ( val firstName:String, val lastName:String) {
val vitalSigns = new VitalSigns();
}
}
如果我尝试使用以下行编译它:scalac -d ../.. Patient.scala
我收到以下错误
Patient.scala:2: error: VitalSigns is not a member of gasguru.patient
import gasguru.patient.VitalSigns;
^
error: error while loading VitalSigns, Missing dependency 'class gasguru.patient.VitalSigns', required by ./VitalSigns.class
Patient.scala:6: error: VitalSigns does not have a constructor
val vitalSigns = new VitalSigns();
^
three errors found
为什么我VitalSigns.class
在编译文件所在的目录位于同一目录中时会出现此错误?不应该导入就够了吗?
谢谢!
编辑:
chs@ubuntu:~/GasGuru/gasguru/patient$ ls
exceptions Patient.scala VitalSigns.scala
PatientMonitor.scala VitalSigns.class