Scala Java Error:值过滤器不是java.util.Map的成员。在课外工作 [英] Scala Java Error: value filter is not a member of java.util.Map. Works outside of class
问题描述
我正在尝试在Eclipse中重构一些Scala代码并遇到此编译错误:
I'm trying to refactor some Scala code in Eclipse and run into this compilation error:
值过滤器不是java.util的成员。地图
import java.io.File
import com.typesafe.config._
class ConfigLoader {
def parseFile( confFile : File) {
val conf = ConfigFactory.parseFile(confFile).root().unwrapped();
for((k,v) <- conf; (dk, dv) = (k, v.toString())) config.param += (dk -> dv);
}
(config是一个对象,其中param是String的字符串:String )
(config is an object with "param" being a Map of String:String)
此代码完全来自Main(),其工作正常如下:
This code was pull exactly from Main() where it worked fine like so:
object Main extends Logging {
def main(args: Array[String]) {
//code cropped for readability.
//config.param["properties"] is absolute path to a passed-in properties file.
val conf = ConfigFactory.parseFile(new java.io.File(config.param("properties"))).root().unwrapped();
for((k,v) <- conf; (dk, dv) = (k, v.toString())) config.param+=(dk -> dv);
您可以看到代码完全相同。我导入了相同的库。现在我在main中做的不同就是实例化 ConfigLoader
并调用它如下:
as you can see the code is exactly the same. I've imported the same libraries. All i'm doing different in main now is instantiating ConfigLoader
and calling it like so:
cfgLoader.parseFile(config.param(properties))
任何想法只是通过移动它导致错误上课了吗?
我用谷歌搜索了这个错误,它看起来很通用。
I've googled the error and it seems to be pretty generic.
推荐答案
事实证明我毕竟错过了一个棘手的导入:
Turns out I was missing a tricky import after all:
import collection.JavaConversions ._
不要与 JavaConverters混淆._
我确实拥有。
希望这有助于其他人。
Hope this helps someone else.
这篇关于Scala Java Error:值过滤器不是java.util.Map的成员。在课外工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!