Einzelnen Beitrag anzeigen

Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#23

Re: Delphi mit Java komunizieren

  Alt 29. Jul 2006, 14:46
So,
hab mal ein kleines Beispielprojekt zusammengestellt. Ist sehr sehr einfach gehalten, sollte dir aber grob klar machen wie du dein Programm (das etwas mehr beihalten sollte als die Klasse hier) zum laufen bekommst. Der Java-Src liegt dann natürlich auch bei. Die Java Sachen liegen im Unterordner Java, der Delphicode direkt im Ordner. Du brauchst dir eigentlich nur das Formular anschauen, die andere .pas hast du schon.
Das komplette Anlegen der JVM und TJNIEnv passiert im onCreate des Fomulars (ist nur der Aufruf von TJvm.Create (mit dem ClassPath), was deine Frage beantworten dürfte, ja legt Beides an.

Dann hast du ein Formular mit vier Buttons. Die machen eigentlich genau das was drauf steht. Einmal wird eine statische Variable gelesen, einmal eine nicht statsiche, einmal eine statische Methode ausgeführt, einmal eine nicht-statische.
Das ist alles.
Hatte gerade ein paar Probleme mit dem korrekten Erzeugen einer neuen Instanz (übersehen, dass ich die Method-Id des Standardkonstruktors mit übergeben muss). Da ist halt wenn du andersrum arbeitest das schöne, dass du natürlich schon eine Instanz (als this Zeiger) hast.
Ok, der Code mag im ersten Moment etwas kompliziert wirken (gerade was die Signaturen von Methoden angeht), ist aber super einfach. Muss hier auch sagen, die Kapselung von diesem JavaD ist super! Ist wirklich einfach wenn man berücksichtigt, dass hier eigentlich vollkommen verschiedene Systeme aufeinander treffen (auch ein Lob an das imho durchdachte JNI!)
Hab ordentlich viele Kommentare geschrieben, hoffe die helfen dir weiter. Ja, wie gesagt damit solltest du eigentlich was zum Laufen bekommen.

Viel Spaß + Erfolg!
Angehängte Dateien
Dateityp: zip javagoesdelphi_190.zip (262,9 KB, 42x aufgerufen)
  Mit Zitat antworten Zitat