Проблема с созданием Java анонимного класса с обобщениями в Scala - PullRequest
2 голосов
/ 21 сентября 2010

Например, у меня следующий Java-интерфейс

public interface Test<T,M> {
       public M get(T t);
}

если я хочу создать класс ananymoys в Java с этим интерфейсом

val t = new Test[Int,Boolean](){
     def get(t: Boolean) = 0
}

У меня следующая ошибка

Scala.scala: 15: ошибка: scal.test.example.Test не принимает параметры типа val t = new Test [Int, Boolean] () {

Ответы [ 2 ]

4 голосов
/ 21 сентября 2010

Заключение вашего кода Scala в объект для отдельной компиляции и исправление порядка параметров типа:

object TestI {
    val t = new Test[Boolean,Int]() {
        def get(t: Boolean) = 0
    }
}

... Я не получаю ошибок компиляции.

2 голосов
/ 21 сентября 2010

Это была старая версия scala 2.6.1.Он был установлен по умолчанию из архива maven для проектов scala.Теперь я обновил версию до 2.8.0 и проблема была решена.Для старой версии вам нужно указать версию Java.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...