今天在学习spark用java读取json文件时,学习了遇到了Only one SparkContext may be running in this JVM的错误。
错误的原因是因为在调用mapper.readValue函数时传入了带有SparkContext的类,导致SparkContext被加载两次。于是又回头看了看class的概念。
对象类的.class保存了类的所有信息,在装载的同时会自动创建该类的实例,所以在调用该函数时会重新创建该类的实例,而该实例中又包含了SparkContext对象,因此,jvm中便出现了两个SparkContext对象,从而导致了该错误。
本文探讨了在使用Spark和Java读取JSON文件时遇到的OnlyoneSparkContextmayberunninginthisJVM错误。详细解释了错误产生的原因,即由于在调用mapper.readValue函数时传递了包含SparkContext的类而导致SparkContext被加载多次。
482

被折叠的 条评论
为什么被折叠?



