Frage an virtualenv, pydev, python, eclipse – Definieren Sie den Remote-Interpreter auf einem Remote-Linux-Computer mit Pydev und RSE Server

17

Ich habe eine Windows-Box und eine Linux Red Hat Box.

Eclipse wird unter Windows installiert. Befolgen Sie dazu die Anweisungen in dieser EclipseSeite. Ich habe es geschafft, einen RSE-Server einzurichten, der auf der Linux-Box läuft. Ich kann auch ein Projekt auf dem Remote-Computer erstellen.

Eigentlich verwende ich virtuelle Umgebungen unter Linux und möchte diese bei der Entwicklung auswählen.

Gibt es eine Möglichkeit, aRemote-Interpreter für ein PyDev oder Django Projekt?

Ich habe meine verwandte Frage hier gepostet:stackoverflow.com/questions/51693969/… Dmitry Somov
Ich habe folgendes eingerichtet: Ubuntu 16.04-64 auf Host; LXC-Container mit Ubuntu 16.04-64, verbunden über ssh; Mehrere Django-Projekte (Pure Django, Django-CMS, Wagtail CMS) befinden sich in separaten Verzeichnissen in / home / ubuntu / dir1, dir2, dir3. Dmitry Somov
Wenn es jemals funktioniert, haben Sie dann etwas dagegen, Ihre Lösung hier zu veröffentlichen? exfizik
Ich fürchte, es ist nicht möglich, einen Remote-Interpreter für PyDev zu verwenden:Eclipse PyDev verwendet einen Remote-Interpreter Jaime M.

Deine Antwort

3   die antwort
6

Ich hatte mal das gleiche Problem mit einemRemote-Python-Interpreter in einer virtuellen Ubuntu-Maschine. Ich denke, Sie sollten in der Lage sein, eine Verbindung herzustellenssh in deinem fall auch.

Obwohl Pycharm Remote - Interpreter haben kann (auch mit virtuellen Maschinen mitLandstreicher), manche Leute wie ich bevorzugen Redakteure wieErhabener Text 3nicht IDE. Dort können Sie einen Pfad zu jedem Interpreter auf Ihrem Hostcomputer angeben. Ich denke, Pydev erlaubt es auch, einen Python-Interpreter innerhalb des Hosts anzugeben.

Die einfachste (aber vielleicht nicht die schönste) Möglichkeit, einen Remote-Interpreter zu verwenden, bestand darin, den Umgebungsordner (in dem sich die ausführbare Python-Datei und die Module befanden) der virtuellen Maschine auf meinem Host bereitzustellen. Folgendes können Sie also tun:

In der virtuellen Maschine (der Gast) -> erstelle einevirtuelle Umgebung in jedem Pfad, den Sie möchten, zum Beispiel,~/myGuestEnvs/testEnv/. Sie können dies mit tunvirtualenv, mit dem du vorher installiert hastpip.

In Ihrem Gastgeber -> installierenwin-sshfs und mounten Sie den entsprechenden Ordner der virtuellen Maschine auf Ihrem Host wie folgt~/myGuestEnvs/testEnv/ ->~/myHostMountedFolder/. Wenn ich das richtig verstanden habe, codieren Sie unter Windows und führen den Code unter Linux aus. Ich muss zugeben, dass es nicht das einfachste ist, Datenträger durch zu mountenssh unter Windows, aber es ist immer noch möglich! Sie können auscheckendiese SoF Frage für andere Wege.

Immer in deinem Gastgeber -> zeige deinen Python-Interpreter auf den gemounteten Ordner:python_interpreter ->~/myHostMountedFolder/bin/python.

Vorsichtig, wenn Sie nur die montieren / zeigenbin Ordner der Umgebung, in dem sich die ausführbare Python-Datei befindet, werden Sie alle verlorenCode-Vervollständigung, gehe zur Definition... Benutzerfreundlichkeit der IDE, da sie Ihre importierten Module nicht finden kann.

Ich sollte hinzufügen, dass Pydev den python_interpreter nicht verwenden kann, wenn die virtuelle Maschine inaktiv ist, da der gemountete Ordner leer ist. Jedes Mal, wenn Sie Code eingeben, müssen Sie die virtuelle Maschine starten. Andernfalls werden möglicherweise der Standard-Host-Python-Interpreter und die Host-Python-Pakete verwendet.

0

das ich auf diese Weise zum Arbeiten gebracht habe (wie Eclipse, das Remotecode in Java debuggt), ist (kommerzielles, proprietäres) WingIDE.

PyCharm macht es auch ziemlich gut. Es ist auch ein proprietäres System. dry
1

Pycharm IDE-Unterstützung für das Ausführen Ihres Projekts / Programms über Remote Interpreter sowie die Unterstützung für die Bereitstellung auf einem Remote-Server (im Lieferumfang enthalten)Pro-Version).

Pycharm unterstützt auch Git / Vagrant / GoogleApp Engine.

Verwandte Fragen