Плагин Scala eclipse java.lang.ClassNotFoundException

Я использую eclipse Версия: 3.7.2 с Scala IDE для Eclipse 2.1.0.nightly-2_09-201203121521-6e8582e. Версия Java 1.6.0_31. ОС - Ubuntu 11.10.

Я искал решения этой проблемы, но пока не нашел. Я надеюсь, что нет очевидного ответа, который я пропустил.

У меня есть этот класс (обратите внимание на пакет):

package model.x.y

import org.scalatest.FunSuite
import org.junit.runner.RunWith
import org.scalatest.junit.JUnitRunner

@RunWith(classOf[JUnitRunner])
class GibberishTestSuite extends FunSuite {
  test("Check Gibberish") {
    assert("blah" === "blah")
  }
}

Я также использую gradle, и исходный путь выглядит так ( обратите внимание, что пакет не соответствует иерархии каталогов):

.../src/test/scala/model/GibberishTest.scala

Eclipse и gradle генерируют соответствующие файлы классов:

bin/model/x/y/GibberishTestSuite.class
build/classes/test/model/x/y/GibberishTestSuite.class

Это нормально работает через gradle, но когда я пытаюсь запустить в eclipse, я получаю

Class not found model.GibberishTestSuite
java.lang.ClassNotFoundException: model.GibberishTestSuite
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217)

Если я изменю пакет на

package model

, чтобы иерархия каталогов и имя пакета совпадают , тогда я могу запустить модульный тест в eclipse. В scala допустимо, чтобы структура пакета и структура каталогов не совпадали. Однако несоответствие, похоже, сбивает с толку eclipse или плагин.

Я делаю что-то не так? Я упускаю какой-то нюанс конфигурации? Эта функция языка scala не поддерживается в eclipse? Будет ли он поддерживаться в какой-то момент?

Спасибо.

9
задан Matthew Farwell 13 March 2012 в 05:16
поделиться