2015-06-04 11 views
5

Ich versuche, eine verteilbare .pex-Datei für die Verteilung meiner Python-Anwendung (Flask) mit PEX zu erstellen.Verpackungsanforderungen _und_ lokale Module mit PEX

Wenn ich die folgende Einstellung:

. 
|_ requirements.txt 
|_ app.py 
|_ module1 
|_ module2 

Wie würde ich dieses Paket mit PEX?

kann ich meine Anforderungen installieren und ein app.py mit diesem Lauf:

pex -r requirements.txt -- app.py 

Aber wie kann ich meine lokalen Module in der PEX Verteilung eignen sich auch?

Ich habe versucht:

pex -r requirements.txt -m module1 module2 -- app.py 

und auch:

pex module1 module2 -r requirements.txt -- app.py 

aber den Fehler:

Could not satisfy all requirements for module1

Wenn ich komplett mein lokales Module auslassen:

pex -r requirements.txt -- ./app.py 

Ich bekomme kann Anforderungen nicht erfüllen (etwas in meiner Anforderungen.txt Feld)

Fehle ich etwas offensichtlich hier? Ist das ein falscher Anwendungsfall für PEX?

Antwort

-1

Ich hatte die gleichen Probleme. Das einzige funktionierende Beispiel, das ich finden konnte, ist Pex selbst. Aus habe ich abgeleitet, dass die Anforderungen in der Befehlszeile zusätzlich zu Ihrem Modul aufgelistet werden sollten.

Diese Inkarnation für mich gearbeitet:

PEX $ (cat requirements.txt). -e myapp.main: main -o dist/myapp.pex

+0

Also bekomme ich immer noch Probleme damit. Ich bekomme ungelöste Abhängigkeiten vom Versuch, meine Anforderungen zu installieren (obwohl dies in pip funktioniert) - es scheint, PEX scheint keine große Abhängigkeitsauflösung zu haben. Es fühlt sich so an, als ob das etwas ist, was PEX ausarbeiten muss, bevor es wirklich benutzt wird. Vielleicht muss es einmal mit Pants benutzt werden, um das zu umgehen? – toast38coza