Я scala noob, и я работаю над написанием блок-тестов для программы искры Scala. Когда я пытаюсь запустить мой тест Scala блока случае использования sbt test
команды, я получаю следующее сообщение об ошибкеScala «not found: type» error
BasicACRStatsTest.scala:8: not found: type BasicACRStats
[error] var basicStats: BasicACRStats = _
[error] ^
BasicACRStatsTest.scala:14: not found: type BasicACRStats
[error] basicStats = new BasicACRStats
[error] ^
[error] two errors found
[error] (test:compile) Compilation failed
Я использую IntelliJ и когда я пытаюсь передать класс BasicACRStats
он показывает Cannot resolve symbol BasicACRStats
хотя я заявил в правильный пакет.
BasicACRStat.scala
package com.company.analytics
import org.apache.hadoop.conf.Configuration
import org.apache.hadoop.fs.{FileSystem, Path}
import org.apache.hadoop.fs.FileSystem.Statistics
import org.apache.spark.SparkConf
import org.apache.spark.SparkContext
import org.apache.spark.sql.hive.HiveContext
import scala.collection.mutable.ArrayBuffer
import collection.mutable
object BasicACRStats {
def main(args: Array[String]) {
// Some code goes here
}
}
BasicACRStatsTest.scala
import com.company.analytics
import org.scalatest.FunSuite
import org.scalatest.BeforeAndAfter
import org.apache.spark.SparkConf
import org.apache.spark.SparkContext
class BasicACRStatsTest extends FunSuite with BeforeAndAfter {
@transient var sc: SparkContext = _
var basicStats: BasicACRStats = _
// some code goes here
}
Simple.sbt
name := "basicACRStats"
version := "1.0"
scalaVersion := "2.10.4"
libraryDependencies += "org.apache.spark" %% "spark-core" % "1.2.0"
libraryDependencies += "org.apache.spark" % "spark-sql_2.10" % "1.1.0"
libraryDependencies += "org.apache.spark" % "spark-hive_2.10" % "1.1.0"
libraryDependencies += "org.scalatest" % "scalatest_2.10" % "1.9.1" % "test"
Структура Directory Project
projectfoo
.idea
src
main
scala
com
company
analytics
BasicACRStats.scala
test
scala
BasicACRStatTest.scala
target
simple.sbt
Я не уверен, как устранить эту проблему, пожалуйста, поделитесь своими мыслями и, пожалуйста, дайте мне знать, если вам потребуется дополнительная информация.
Вам нужно «импортировать com.company.analytics._' в верхней части вашего теста. Просто импортировать пакет не поможет. – millhouse
Я попытался добавить вышеприведенную строку в верхней части моего тестового примера и до сих пор не повезло. Он показывает ту же ошибку, когда я запускаю тест. – BarryVenom