# C Sourcecode in Java einbinden



## Stifler21 (10. Feb 2011)

Guten Tag,

Ich versuche schon zeit längerer Zeit einen C Sourcecode in mein Java Projekt einzubinden.
Ich arbeite mit der Java Plattform Eclipse. So das ich Werte hin und her schicken kann.

Aber ich bekomme es einfach nicht hin.

Ich war auch schon in anderen Forums aber die haben immer nur geschrieben: "Probiers mit JNI"
Das habe ich auch versucht nur leider ohne Erfolg. Ich find einfach keine gute Anleitung wie das gehen soll.

Kann mir jemand eine Anleitung geben oder ein paar Tipps geben wie das am besten geht?


Gruß Steffen


----------



## XHelp (10. Feb 2011)

Es gibt einen FAQ Eintrag dazu: http://www.java-forum.org/spezialthemen/35582-jni-windows-anleitung.html


----------



## Stifler21 (11. Feb 2011)

Servus,

Die Anleitung ist nicht schlecht gemacht. 
Aber da ich noch ein Anfänger bin ist mir vieles noch nicht klar mit den ganzen Befehlen.
z.B. schreibt er mal:
Sie können mit dem Compiler von Windows die Shared Library mit folgenden Kommando erzeugen.

    * Cl –Ic:\java\include –Ic:\java\include\win32 -LD HelloWorldImp.c -Fehello.dll

Da versteh ich mal gar nichts..

Gibt es nicht eine Anleitung für Anfänger?


Gruß Steffen


----------



## The_S (11. Feb 2011)

Evtl. klappts damit besser!?

Java Blog Buch : 19. Java Native Interface


----------



## Stifler21 (17. Feb 2011)

Hey,

Danke für eure Antworten.
Habe mal beide Anleitungen durch gelesen und auch versucht zu machen aber ich bleib bei beiden an der gleiche Stelle hängen.
Und zwar kapier ich nicht wenn es heißt:
Sie können mit dem Compiler von Windows die Shared Library mit folgenden Kommando erzeugen.

    * Cl –Ic:\java\include –Ic:\java\include\win32 -LD HelloWorldImp.c -Fehello.dll

Was ist damit gemeind?
Wo ist der Compiler von Windows die Shared Library?


Gruß Steffen


----------



## KrokoDiehl (17. Feb 2011)

Naja, um JNI zu nutzen musst du deinen C-Code (den nativen Code) in eine DLL (Shared Library unter Windows) kompilieren. Dafür braucht man einen C/C++ Compiler und entsprechende Einstellungen.

Du kannst ja mal probieren, eine Windows-Eingabeaufforderung zu öffnden, in das Verzeichnis zu gehen, wo deine C/C++ Codedatei liegt und die genannte Zeile eintippen und ausführen, wobei du 
	
	
	
	





```
HelloWorldImp.c
```
 durch den Namen deiner Codedatei ersetzen musst.

Aber generell rate ich dann doch einmal mit dem Thema C/C++ Programmieren und Kompilieren anzufangen...


----------



## ARadauer (18. Feb 2011)

> Gibt es nicht eine Anleitung für Anfänger?


Ich muss ehrlich sagen das JNI/JNA einfach nix für Anfänger ist...


----------



## Gastredner (19. Feb 2011)

Du wirst wohl einen eigenen Compiler installieren müssen - von diesem "Windows Compiler" habe ich noch nix gehört.
MinGW ist eine gute Wahl. Cygwin finde ich zwar teilweise angenehmer zu bedienen (vor allem das Setup mit der Update-Verwaltung ist toll), aber Cygwin benutzt Unix-Pfade, was teilweise verwirrend sein kann.


----------

