我正在尝试构建一个可分发的.pex文件,用PEX分发我的python应用程序(Flask)。
如果我有以下设置:
.
|_ requirements.txt
|_ app.py
|_ module1
|_ module2
我如何用pex打包?
我可以安装我的要求并运行app.py:
pex -r requirements.txt -- app.py
但是我怎样才能在pex发行版中包含我的本地模块?
我试过了:
pex -r requirements.txt -m module1 module2 -- app.py
还有:
pex module1 module2 -r requirements.txt -- app.py
但是得到错误:
无法满足module1的所有要求
如果我完全遗漏了我的本地模块:
pex -r requirements.txt -- ./app.py
我得到的不能满足(在我的requirements.txt字段中的某些内容)
我错过了一些明显的东西吗?这对于PEX来说是不正确的用例吗?
答案 0 :(得分:-1)
我遇到了同样的麻烦。我能找到的唯一有效的pex例子是pex本身。从https://github.com/pantsbuild/pex/blob/master/tox.ini开始,我推断除了您的模块之外,还应该在命令行中枚举这些要求。
这个化身对我有用:
pex $(cat requirements.txt)。 -e myapp.main:main -o dist / myapp.pex