Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   JAVA code in Delphi (https://www.delphipraxis.net/192320-java-code-delphi.html)

wschrabi 8. Apr 2017 05:56

JAVA code in Delphi
 
Hi
Habe mit JavaToPas Converte ein .class file in ein PAS (interface) FIle convertiert.
Doch mein Delphi 10.2 daß beim KOmpilieren auf einer WIN32 Platform die JNI Bridge (AndroidAPI.JNIBridge, ..) nicht conform ist. Wie kann ich dieses Java class file in Delphi ansprechen?

Delphi-Quellcode:
//
// Generated by JavaToPas v1.4 20170408 - 064725
// *** unregistered evaluation copy ***
////////////////////////////////////////////////////////////////////////////////
unit quineMccluskey.QuineMcCluskeyAlgorithm;

interface

uses
  AndroidAPI.JNIBridge,
  Androidapi.JNI.JavaTypes;

type
  JQuineMcCluskeyAlgorithm = interface;

  JQuineMcCluskeyAlgorithmClass = interface(JObjectClass)
    ['{839A79CA-FC92-4947-9FBF-B6415B175C86}']
    function compare_adjacent_minterms(group_wise : TJavaArray<TJavaArray<JString>>) : TJavaArray<TJavaArray<JString>>; cdecl;// ([[Ljava/lang/String;)[[Ljava/lang/String; A: $9
    function fill_1d_array(filling_array : TJavaArray<JString>) : TJavaArray<JString>; cdecl;// ([Ljava/lang/String;)[Ljava/lang/String; A: $9
    function fill_1d_int_array(temp_array : TJavaArray<Integer>) : TJavaArray<Integer>; cdecl;// ([I)[I A: $9
    function fill_arrays(all_combined : TJavaArray<TJavaArray<JString>>) : TJavaArray<TJavaArray<JString>>; cdecl;// ([[Ljava/lang/String;)[[Ljava/lang/String; A: $9
    function fill_dontcare(input_min : TJavaArray<JString>) : TJavaArray<JString>; cdecl;// ([Ljava/lang/String;)[Ljava/lang/String; A: $9
    function fill_dontcares(filling_array : TJavaArray<TJavaArray<JString>>) : TJavaArray<TJavaArray<JString>>; cdecl;// ([[Ljava/lang/String;)[[Ljava/lang/String; A: $9
    function fill_int_arrays(all_combined : TJavaArray<TJavaArray<Integer>>) : TJavaArray<TJavaArray<Integer>>; cdecl;// ([[I)[[I A: $9
    function fill_minterms(input_min : TJavaArray<JString>) : TJavaArray<TJavaArray<JString>>; cdecl;// ([Ljava/lang/String;)[[Ljava/lang/String; A: $9
    function get_bits(min_array : TJavaArray<Integer>) : Integer; cdecl;       // ([I)I A: $9
    function get_essential_primes : TJavaArray<TJavaArray<JString>>; cdecl;    // ()[[Ljava/lang/String; A: $9
    function get_primes(temp_prime_calc : TJavaArray<TJavaArray<JString>>) : TJavaArray<TJavaArray<JString>>; cdecl;// ([[Ljava/lang/String;)[[Ljava/lang/String; A: $9
    function init : JQuineMcCluskeyAlgorithm; cdecl;                           // ()V A: $1
    function scan_minterms : TJavaArray<Integer>; cdecl;                       // ()[I A: $9
    function to_binary(min_array : TJavaArray<Integer>) : TJavaArray<JString>; cdecl;// ([I)[Ljava/lang/String; A: $9
    function to_binary_string(integer_val : Integer) : JString; cdecl;         // (I)Ljava/lang/String; A: $9
    procedure complete_methods ; cdecl;                                        // ()V A: $9
    procedure give_output(output_array : TJavaArray<JString>) ; cdecl;         // ([Ljava/lang/String;)V A: $9
    procedure main(args : TJavaArray<JString>) ; cdecl;                        // ([Ljava/lang/String;)V A: $9
    procedure prime_fill(result : JString; op1 : JString; op2 : JString) ; cdecl;// (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V A: $9
    procedure remove_duplicate_primes ; cdecl;                                 // ()V A: $9
  end;

  [JavaSignature('quineMccluskey/QuineMcCluskeyAlgorithm')]
  JQuineMcCluskeyAlgorithm = interface(JObject)
    ['{488C131B-815F-42BD-8492-CA48F21CD7E5}']
  end;

  TJQuineMcCluskeyAlgorithm = class(TJavaGenericImport<JQuineMcCluskeyAlgorithmClass, JQuineMcCluskeyAlgorithm>)
  end;

implementation

end.

himitsu 8. Apr 2017 11:32

AW: JAVA code in Delphi
 
Zitat:

Zitat von wschrabi (Beitrag 1366838)
beim KOmpilieren auf einer WIN32 Platform

Garnicht?

AndroidAPI.JNIBridge,
Androidapi.JNI.JavaTypes

Natürlich sind diese Dateien nicht mit Windows kompatibel.
Delphi verwendet im Android Schnittstellen/APIs des Betriebssystems, welche es im Windows nicht gibt.

wschrabi 8. Apr 2017 20:43

AW: JAVA code in Delphi
 
Dank Dir, jetzt ist alles klar. :P

sh17 6. Nov 2017 11:36

AW: JAVA code in Delphi
 
Hast Du schon eine Lösung?

Ich habe es jetzt mit https://github.com/aleroot/DelphiJNI versucht und JRE 8, aber irgendwie klappt das nicht. Hat jemand eine aktuellere JNI?

mjustin 6. Nov 2017 12:34

AW: JAVA code in Delphi
 
Zitat:

Zitat von sh17 (Beitrag 1385345)
Hast Du schon eine Lösung?

Ich habe es jetzt mit https://github.com/aleroot/DelphiJNI versucht und JRE 8, aber irgendwie klappt das nicht. Hat jemand eine aktuellere JNI?

JNI ist fester Bestandteil der Java Runtime, aktueller wäre dann z.B. Java 9 oder das nächste Update für Java 8.

sh17 6. Nov 2017 12:53

AW: JAVA code in Delphi
 
OK, hat jemand einen aktuellen Delphi-JNI-Wrapper?

Wosi 6. Nov 2017 14:51

AW: JAVA code in Delphi
 
Ich habe in mehreren Projekten nur Probleme mit der JNI in Verbindung mit Delphi gehabt. Da gab es immer wieder mal sporadische Zugriffsverletzungen. Wir haben uns dann darauf verständigt die Kommunikation zwischen einer Java- und einer Delphi-Anwendung über Sockets zu lösen.
Falls du keine robuste JNI-Anbindung für Delphi findest, solltest du vielleicht über einen alternativen Weg der Interprozesskommunikation nachdenken.

hanvas 6. Nov 2017 15:55

AW: JAVA code in Delphi
 
Zitat:

Zitat von wschrabi (Beitrag 1366838)
Hi
Habe mit JavaToPas Converte ein .class file in ein PAS (interface) FIle convertiert.
Doch mein Delphi 10.2 daß beim KOmpilieren auf einer WIN32 Platform die JNI Bridge (AndroidAPI.JNIBridge, ..) nicht conform ist. Wie kann ich dieses Java class file in Delphi ansprechen?

Du kannst es mal mit :

https://www.winsoft.sk/java4delphi.htm

probieren. Wollte es selbst schon ausprobieren, bin aber nicht dazugekommen.

cu Ha-Joe

sh17 7. Nov 2017 12:05

AW: JAVA code in Delphi
 
ok, generell geht es um die Einbindung von Lucene. Entweder ich weiche auf die Lucene.Net Variante aus, oder ich nehm gleich ElasticSearch oder Solr

mkinzler 7. Nov 2017 12:12

AW: JAVA code in Delphi
 
https://edn.embarcadero.com/article/38723

Zitat:

oder ich nehm gleich ElasticSearch
https://github.com/chuacw/ElasticSearchIndexDelphi


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:37 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz