Ich schreibe eine native Java-Bibliothek in C ++ und benutze die Ausnahmebehandlung innerhalb der nativen Bibliothek selbst, aber die Bibliothek stürzt ab, sobald ich die Ausnahme ausleite. Hier ist mein einfaches Testprogramm, wenn ich es aus dem Java-Test herausrufe, stürzt es einfach ab, sobald eine Ausnahme ausgelöst wird. Der Catch-Block funktioniert nicht. Irgendwelche Ideen was ich vermisse. Danke.
%Vor%Kompilieren und verknüpfen:
%Vor%Ich habe dein Beispiel versucht und alles ist gut gelaufen. Meine Umgebung ist Ubuntu 12.04 (64bit) mit Oracle JDK 1.7.
Also, ich schätze, Ihre Umwelt ist der Schuldige. Da Sie die Option -m64
verwenden, könnte es zu einem Konflikt zwischen 32-Bit-System und 64-Bit-libtest.so kommen.
Bitte verifizieren Sie, dass Ihr System, JDK, GCC usw. alles zusammen passt.
Sieht aus wie Ausnahme wurde nicht gefunden. Probieren Sie
aus %Vor% kann ein Problem mit int
size oder etwas sein? Oder hast du vergessen, neu zu kompilieren?