Wie installiere ich JPype unter OS X Lion zur Verwendung mit Neo4j?

7

Ich versuche, Neo4j für ein Projekt zu verwenden, und möchte damit über Python interagieren, da ich ein Neuling in der Programmierung bin und kein Java kenne. Ich befolge die Installationsanweisungen , aber ich bleibe dran Der erste Schritt ist die Installation von JPype.

Ich benutze OS X 10.7 (Löwe). Ich denke meine Konfiguration ist ziemlich Standard mit Python 2.7.2 von der Python-Website heruntergeladen und Java 1.6.0 von der Apple-Website heruntergeladen.

Wenn ich renne

%Vor%

Beim JPype-Installationsprogramm erhalte ich ungefähr 100 Zeilen Fehlercode über verschiedene .h-Dateien, und dann endet mit den Zeilen:

%Vor%

Ich habe einen Blogpost über einen GCC-Fehler bei JPype gefunden , aber ich folgte den Anweisungen ohne Erfolg. Ich habe auch dem Autor dieses Posts eine E-Mail geschickt, und er hat mir gesagt, dass ich JPype nie wirklich benutzt habe, in OS X 10.6 gearbeitet habe und keinen Einblick hatte.

Ich habe auch den Schöpfer von JPype gemailt, der mir sagte, dass er nur Windows benutzt und keine Ahnung hat, wie man die Installation unter OS X macht. Aber wenn wir das lösen können, kann ich ihn auf die Antwort hinweisen und vielleicht Er kann die Lösung der JPype-Dokumentation hinzufügen und vielen anderen Menschen helfen!

Also, weiß jemand, was ich falsch mache? Ich würde gerne Neo4j benutzen, aber ich Ich kenne Java nicht, deshalb bin ich völlig am Ende, weil ich einen Compiler reparieren muss Fehler.

Basierend auf dem Lesen jedes verfügbaren Google-Ergebnisses laufen meine beiden Theorien sind das:

  1. Ich verwende irgendwie eine 32-Bit-Version von Python oder von Java (obwohl ich verwendete offizielle Standardinstallationen und kann nicht herausfinden, wie Wechsel zu 64-Bit oder wenn das überhaupt möglich ist)

  2. Die JPype-Dateien können nur mit GCC 4.0 statt mit 4.2 kompiliert werden. Aber ich kann online nichts über das Rollback zu GCC 4.0 finden (oder wenn es mit 2011 MacBooks geliefert wird und es gibt eine Möglichkeit, zu erzwingen JPype, um mit dem stattdessen zu kompilieren).

Es gibt eine weitere ähnliche Frage , aber die Lösung besteht darin, einen anderen Adapter zu verwenden durchläuft REST, anstatt direkt in Java zu hängen. Ich werde es versuchen, wenn es sein muss, aber ich würde lieber die empfohlene Neo4j-Methode verwenden, wenn es möglich ist.

    
rogueleaderr 15.12.2011, 18:59
quelle

10 Antworten

11

Ich bin kein Python-Typ, habe aber versucht, JPype auf meinem Rechner zu installieren:

%Vor%

Unter OSX Lion scheint sich das neueste JDK hier zu befinden:

%Vor%

Ein bisschen googeln ist in diesem Post aufgetaucht: Ссылка

Ich habe diese Anweisungen befolgt, um setup.py zu ändern, und dann sudo python setup.py install ohne Probleme ausgeführt.

Hilft das?

    
akollegger 15.12.2011, 21:50
quelle
10

Auf meinem Lion war das "include" -Verzeichnis im JDK verschwunden, daher konnte JPype jni.h nicht finden.

Ich habe setup.py an zwei Stellen aktualisiert, um zu bestimmen, wo jar-Bibliotheken zu finden sind:

%Vor%

Und einen, wo Sie jni.h finden können:

%Vor%     
jakewins 21.09.2012 13:48
quelle
4

Für mich,

%Vor%

hat funktioniert.

%Vor%     
maniezhilan 19.07.2012 05:41
quelle
2

Hier sind die Anweisungen, die ich in meine README eingefügt habe, um JPype unter OS X 10.7 zu installieren. Die gleiche Idee wie die Antworten hier, aber unterschiedlich genug, um die Einreichung zu rechtfertigen.

Die Python-Schnittstelle zu Java (JPype) benötigt Mods zur setup.py: Zusammenfassend müssen Sie sicherstellen, dass das Skript JPype setup.py Ihr Java SDK-Verzeichnis "Headers" und "Home" anzeigt Ich musste zuerst Java von Apple installieren, da meine standardmäßige OS X-Installation keine Header im typischen Java-Installationspfad enthielt, den ich bei der Ausführung von

gefunden hatte %Vor%

Wenn Sie ein Header-Verzeichnis haben, brauchen Sie wahrscheinlich Java nicht neu zu installieren und können den Pfad vars basierend auf Ihrem java HOME-Verzeichnis festlegen, das sich wahrscheinlich von denen in diesen Richtungen unterscheidet.

Nachdem ich Java installiert habe, habe ich die neue Installation in:

gefunden %Vor%

Mein Home-Verzeichnis war:

%Vor%

und mein Kopfverzeichnis war:

%Vor%

1) Das JPype-Skript geht davon aus, dass Headers im Home-Verzeichnis liegt, aber nicht, also habe ich die Home-Pfad-Variable geändert und eine neue Content-Pfad-Variable im setup.py-Skript erstellt - In setupMacOSX(self) :

%Vor%

2) In setupMacOSX(self) , ändern self.libraryDir :

%Vor%
  • Beachten Sie, dass dieser Schritt als erforderlich erwähnt wurde, aber ich musste dies nicht tun, damit es funktioniert, also versuchen Sie es vielleicht zuerst ohne

3) Fügen Sie in setupInclusion Pfade zu Ihrem Verzeichnis "Home / include" und Ihrem "Headers" -Dir hinzu:

%Vor%

4) Die Installation sollte nun funktionieren:

%Vor%     
Tony 09.01.2013 22:57
quelle
2

Für alle, die immer noch versuchen, Jpype zu installieren, aber inzwischen Mac OS aktualisiert haben: Andreas Kollegers Antwort funktioniert einfach gut, aber mit XCode 4.3 hat sich der Pfad in /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/System/Library/Frameworks/JavaVM.framework/Versions/Current/

geändert

In ML ist MacOSX10.8.sdk . Zumindest auf meinem System. :)

    
Bouncner 22.11.2012 22:43
quelle
1

Für mich auf Mountain Lion

%Vor%

hat funktioniert.

%Vor%     
Felipe Bañados S 23.08.2012 15:48
quelle
1

Ich habe das gleiche getan, aber ich habe

gewählt %Vor%

stattdessen

%Vor%

merke, dass ich Version 6 vs 7 verwende. Mit der 7 Version habe ich die gleichen Fehler wie am Anfang.

    
Marc Pou 16.12.2011 17:21
quelle
0

Um Wills Antwort ein wenig konkreter zu machen: Ich musste die Methode setupInclusion (self) ändern, indem ich den vorgeschlagenen Verzeichnispfad, also '/System/Library/Frameworks/JavaVM.framework/Headers' auf Mountain Lion ( Java Version 1.6). Damit ist die Installation von JPype gelungen (allerdings gab es eine Reihe von Warnungen ...)

    
Ivan Herman 31.03.2013 16:41
quelle
0

Hier ist, was für mich funktionierte - empfehlen Sie, die erste Zeile in Ihrem Profil zu setzen.

export JAVA_HOME = $ (/ usr / libexec / java_home) cd $ JAVA_HOME sudo ln -s enthält Header sudo cp include / darwin / * include / CD -

Beachten Sie, dass ich anstelle von setup.py meine JDK-Installation ändere. Dies hat den Vorteil, das Problem für andere Projekte zu beheben.

    
Tristan Reid 01.03.2014 17:43
quelle
-1

Für diejenigen, die versuchen, auf Mountain Lion zu installieren, musste ich die Datei setup.py weiter bearbeiten, um die Header-Dateien hier einzubinden:

/System/Library/Frameworks/JavaVM.framework/Versions/Current/Headers

    
Will 29.09.2012 10:54
quelle

Tags und Links