Scala 如果类和对象在同一个文件中,如何调用类构造函数
在MyFactory.scala中,对象和类定义在同一个文件中,名称相同,如下所示Scala 如果类和对象在同一个文件中,如何调用类构造函数,scala,maven,companion-object,Scala,Maven,Companion Object,在MyFactory.scala中,对象和类定义在同一个文件中,名称相同,如下所示 package com.mydomain.app.module object MyFactory{ val a1 = "a1" val b1 = "b1" } class MyFactory(config:Configuration){ //blah.... } 问题是我无法在另一个类中启动MyFactory对象 var myFactory = new Myfactory(defau
package com.mydomain.app.module
object MyFactory{
val a1 = "a1"
val b1 = "b1"
}
class MyFactory(config:Configuration){
//blah....
}
问题是我无法在另一个类中启动MyFactory对象
var myFactory = new Myfactory(defaultConfiguration)
由于错误
not found: type MyFactory
我所做的只是一个普通的进口货
import com.mydomain.app.module.MyFactory
如果我不能修改MyFactory.scala遗留代码中的任何内容,那么启动类对象的有效方法是什么
var myFactory = new MyFactory(defaultConfiguration)
是初始化类的对象的有效方法
导入com.mydomain.app.module.MyFactory应该足以将MyFactory及其同伴引入范围
有时,对象应用程序不是包com.mydomain的成员可能意味着您正在尝试重新编译MyFactory.scala,引用com.mydomain中未编译的内容
尝试mvn clean compile。尝试导入com.mydomain.app.module。@jwvh谢谢,现在前面的错误已经消失,但现在它抱怨object app不是包com的成员。mydomain@Dreamer我的工厂真的是我的工厂吗?这不是一个成员错误do sbt clean compile。@Dmytro Mitin是的。Scala应用程序不是基于sbt构建的,只是一个maven项目。@Dreamer然后mvn clean compile