eine Java-Methode aus einem C++-Anwendung aufrufen???
-
Hi,
Ich beabsichtige Funktionen, die in Java implementiert sind, aus C++-Anwendungen aufzurufen. Der umgekehrte Fall klappt ohne Probleme, in dem ich die aufzurufende C-Funktion in Java als native deklariere . Wie kann ich dem Linker klar machen, dass eine bestimmte Funktion, die irgend wo auftaucht in einer Java-Klasse implementiert ist.Hinweis: Wir versuchen ohne die Java Native Interface zu arbeiten,sprich ohne die JVM. Wir arbeiten mit dem gcj-Compiler.
Vielen Dank
Hammoud
-
hammoud schrieb:
Wie kann ich dem Linker klar machen, dass eine bestimmte Funktion, die irgend wo auftaucht in einer Java-Klasse implementiert ist.
Ich würde sagen garnicht.
-
Hinweis: Wir versuchen ohne die Java Native Interface zu arbeiten,sprich ohne die JVM. Wir arbeiten mit dem gcj-Compiler.
Da hast du dir ja den Tipp selber schon gegeben. Ohne VM kannste natürlich keinen Java-Bytecode ausführen.
Da bleibt dir wohl nichts anderes, als die Java-Funktionen zu native zu compilieren und in einer .dll o.ä. abzulegen.
Den Sinn von dem Ganzen hinterfrage ich jetzt gar nicht erst...
-
[quote="Hussein"]
Ohne VM kannste natürlich keinen Java-Bytecode ausführen.
Da bleibt dir wohl nichts anderes, als die Java-Funktionen zu native zu compilieren und in einer .dll o.ä. abzulegen.
Den Sinn von dem Ganzen hinterfrage ich jetzt gar nicht erst...Ich versuche nicht Java-Byte-Code ohne JVM aufzurufen. Der gcj kann aus einer Java-Quelldatei eine Objekt-Datei erzeugen, die dann weiter verwendet werden kann.
Und zu der Frage welchen Sinn das ganze hat: Ich muss auf der Arbeit raus kriegen, wie so etwas machbar ist
-
doch, muss wohl gehen
http://gcc.gnu.org/java/papers/cni/t1.html
und zweite seite von
http://www.javaworld.com/javaworld/javatips/jw-javatip17.htmlich teste ev. heute abend mal, klingt interessant.
ohne gewähr...
-
-
-
Optimizer schrieb:
Ohne VM kannste natürlich keinen Java-Bytecode ausführen.
-
okok, jetzt glaub ichs langsam!
btw. ich hab in meinem Post auch geschrieben, dass man die Java Funktionen zu native compilieren kann. ;/
-
nur der letzte war für dich
der cygwin hat übrigens den gcj dabei, nur so zum mal testen.
-
hammoud schrieb:
quote="Hussein"