Hier ist ein einfacher Test, den ich verwende, um eine Scala -Methode aus Java aufzurufen:
public static void main(String args[]) {
Java.util.Map<String, Java.util.List<String>> rec = news.recommend.DriverObj.runTest();
System.out.println(rec.toString());
}
Hier ist die Definition der Scala Methode:
def runTest: Java.util.Map[String, Java.util.List[String]] = {
new Java.util.HashMap[String, Java.util.List[String]]
}
Aber es gibt einen Fehler:
Exception in thread "main" Java.lang.NoClassDefFoundError: scala/Function1
at news.recommend.DriverObj.runTest(DriverObj.scala)
Was soll ich tun, damit es reibungslos läuft?
Update: Ich führe es über Eclipse aus und mein Build-Pfad enthält:
Also sollte Scala library gefunden werden?
das Hinzufügen der Scala Abhängigkeit zum Maven Build kann das Problem beheben:
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.10.3</version>
</dependency>
Was mich betrifft, in der Konfiguration von "Run/Debug-Konfigurationen" [idealJ]
denken Sie daran, den Bereich "Abhängigkeiten mit" Bereitgestelltem "einbeziehen" zu wählen.