【发布时间】:2020-06-25 15:45:24
【问题描述】:
我不是 Python 打包/构建专家,但我正在尝试为我编写的应用程序生成可执行文件(针对 Windows 可执行文件)。做了一些研究,发现 PyInstaller 对我的一个小项目非常有用,因为它基本上包括一个外部“cli.py”脚本和一个“setup.py”,并在该目录上运行 pyinstall 来完成这项工作。
结果表明,现在我必须为更“复杂的结构化项目”做同样的事情。该项目使用 git-submodule 指向另一个 repo(Python 模块),我不应该更改该文件夹代码。结构如下:
/my_app
|__ /moduleA (git_submodule)
| |
| |__/subModuleA1
| | |__ __init__.py
| | |__ <bunch of py scrips>
| |
| |__ __init__.py
| |__ scriptA.py
|
|__ /my_app_module
| |
| |__ __init__.py
| |__ <couple of py scripts that imports moduleA stuff and should be made an executable app>
|
|__ cli.py (call a main from my_app_module)
|__ setup.py (point to a main from my_app_module)
我的问题:不确定这是否是此处询问的 PyCharm 问题 (Pycharm imports from Git Submodule),但是当我在 PyCharm 中将这个“my_app”文件夹作为项目打开时,它需要我更新所有该 git-submodule 的内部导入。例如:
- scriptA.py 从 subModuleA1 导入一些内容,例如:
from subModuleA1 import abc
- 现在包含子模块,我必须将其更新为
from moduleA.subModuleA1 import abc
我只是想导入一些“moduleA”的东西在“my_app_module”中使用
问题是我必须更改另一个 repo 代码,这样 PyCharm 才不会抱怨我的导入,但我不应该更改该子模块的内部代码来使用它,对吧?
不确定是 PyCharm 的东西,还是我对 Python 模块/打包缺乏了解,但如果有人对如何以最佳方式组织这个项目有建议,那将非常有帮助。
提前致谢:)
【问题讨论】:
标签: python pycharm pyinstaller git-submodules