Я новичок в Scala. Мне нужна помощь в решении этой проблемы.
Я создал проект, написанный на Scala, и я Я пытаюсь интегрировать его с проектом Java. Я взял зависимость от сборки scala jar в своем проекте Java в eclipse. Однако, когда я вызываю метод в банке Scala, я получаю ClassCastException
при запуске приложения:
Ниже приведено исключение, которое я получаю
Исключение в потоке "main" java.lang.ClassCastException: com.rockymadden.stringmetric.phonetic.MetaphoneAlgorithm не может быть приведен к com.rockymadden.stringmetric.StringFilter в com.rockymadden.stringmetric.phonetic.MetaphoneAlgorithm.compute(MetaphoneAlgorithm.scala:10 ) на org.gobe.search.dictionary.test.PhoneticTest.main(PhoneticTest.java:16)
Что я могу сделать, чтобы исправить это?
public static void main(String[] args) {
MetaphoneMetric metric = new MetaphoneMetric();
DummyImplicit di = new DummyImplicit();
MetaphoneAlgorithm algo = new MetaphoneAlgorithm();
char[] rr = {'h', 'e', 'l', 'l', 'o'};
System.out.println(algo.compute(rr, di));
}
В приведенном выше коде «MetaphoneMetric», «DummyImplicit» являются частью сгенерированного мной Scala Jar.
Логику алгоритма Metaphone можно найти по адресу http://pastebin.com/d7CXjDtx
MetaphoneAlgorithm.compute
(особенно строку 10). Вы там неправильно выполняете приведение, видимо. - person Andrzej Doyle   schedule 29.07.2013MetaphoneAlgorithm
, этоobject
. - person dmitry   schedule 29.07.2013