Ich arbeite an einem libGDX-Projekt und ich habe eine Klasse namens CheerVArachids, die eine andere Inline-Klasse hat, die ein Ereignis-Listener ist. Wenn ich dieses Projekt auf dem Desktop ausführen, funktioniert es gut. Aber wenn ich auf meinem Android-Gerät ausgeführt wird, kann es nicht, dass die Inline-Klasse finden und ich erhalte die folgende Fehlermeldung:Die Klasse XXX, auf die von Methode XXX verwiesen wird, konnte nicht gefunden werden. <YYY>
Could not find class 'com.bbj.cva.CheerVArachnids$PlaceUnitListener', referenced from method com.bbj.cva.CheerVArachnids.<init>
Hier sind die wichtigen Teile meiner Klasse:
package com.bbj.cva;
public class CheerVArachnids implements ApplicationListener {
class PlaceUnitListener implements EventSubscriber<PlaceUnitEvent> {
@Override
public void onEvent(PlaceUnitEvent event)
{
//
}
}
public CheerVArachnids() {
EventBus.subscribe(PlaceUnitEvent.class, new PlaceUnitListener());
EventBus.subscribe(RemoveScreenObjectEvent.class,
new RemoveScreenObjectListener());
}
}
Irgendwelche Ideen, warum auf Android, zur Laufzeit kann es diese Inline-Klasse nicht finden?
Was ist der Rest der Ausnahmebedingungsnachricht? Ich vermute, es ist tatsächlich ein Problem mit der Oberklasse von PlaceUnitListener (und dann wird CodeNoobs Antwort gelten). Was ist ein "EventSubscriber <>"? –