python - 如何使用 PyCharm Remote Deployment 开发多个包?
问题描述
PyCharm Professional 具有远程部署功能,允许远程编辑、运行和调试代码。在编写使用标准或第三方库包的短脚本和顶级应用程序时,这是一个强大的功能。您甚至可以在远程创建一个 virtualenv,安装所有依赖包,并使用它来执行远程程序。
然而,当编写使用多个与应用程序一起开发的包的应用程序时,就需要编辑包。如果没有 PyCharm,通常的方法是使用pip install -e .
or python setup.py develop
,它将源目录与 Python 的包系统集成在一起,从而可以在应用程序旁边编辑许多包。
使用单个包,我发现 PyCharm 会将包代码部署到其远程工作区,如果我在同一个包中运行脚本或入口点,这对于调试来说可以正常工作。
我在 PyCharm 中遇到的问题是不清楚如何远程编辑和调试多个包。假设我为其中一个包打开了一个 PyCharm 项目。当查找引用或调试另一个(但仍由我开发的)包中的代码时,PyCharm 会显示第二个包的缓存版本(在我的本地计算机上)。这很好,直到我在远程主机上编辑第二个包 - 之后缓存的版本现在不同步并且不会自动更新。这会导致执行结果与调试器/编辑器状态不匹配。
还有其他怪癖,例如编辑后的包实际上没有安装到远程的 virtualenv 中。
我无法在 PyCharm 的文档中找到此工作流程的正确指南,我开始怀疑我是否以完全错误的方式进行此操作,或者 PyCharm 只是不支持这种应用程序+多包开发?
解决方案
推荐阅读
- python-3.x - 如何运行包含一些要传递的参数的python脚本文件?
- amazon-web-services - 如何为 Route53 -> EC2 -> API 端点反向代理路径设置 HTTP 测试
- javascript - 添加网页视图 2 次
- reactjs - 功能组件错误:解析错误:Unexpected token, expected ","
- html - 如何将 SQL Server 查询转换为 JSON
- r - 无法抓取中央银行 BR 的网站(在 R 中)
- python-tesseract - 训练 Tesseract 为图标添加标签
- c# - 如何在 Visual Studio C# 中对系列图表进行分组和命名
- c# - 对于 LINQ 谓词的副作用,我们能保证什么?
- java - 在java中将时间戳转换为纪元