CumulusCI TaskImportError:无法为任务加载 Python 类 - 没有名为“imp”的模块

CumulusCI TaskImportError: Cannot load Python class for task - No module named 'imp'

提问人:ana_nymous13 提问时间:11/8/2023 更新时间:11/8/2023 访问量:27

问:

我正在 macOS 上使用 CumulusCI,在尝试运行测试时遇到了问题。每次尝试使用命令 cci task run robot -o suites path/to/salesforce.robot 运行测试时,都会遇到以下 TaskImportError:

Traceback (most recent call last):
  File "/Users/anaisemccrovitz/.local/pipx/venvs/cumulusci/lib/python3.12/site-packages/cumulusci/cli/cci.py", line 91, in main
    cli(args[1:], standalone_mode=False, obj=runtime)
  File "/Users/anaisemccrovitz/.local/pipx/venvs/cumulusci/lib/python3.12/site-packages/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  ...
  File "/Users/anaisemccrovitz/.local/pipx/venvs/cumulusci/lib/python3.12/site-packages/cumulusci/core/config/__init__.py", line 90, in get_class
    raise TaskImportError(message) from e
cumulusci.core.exceptions.TaskImportError: Cannot load Python class for task:
No module named 'imp'

似乎缺少模块 imp,但我不确定为什么会这样,因为我使用的是由 pipx 管理的虚拟环境。

这是我到目前为止尝试过的:

我已确保我的虚拟环境已激活。 我尝试重新安装 CumulusCI 以确保正确安装所有依赖项。 我已经检查了与 Python 路径配置相关的任何问题。 我正在运行 Python 3.12,但我尝试使用 pyenv 3.9,但它没有反映出来。据我所知,imp 模块自 Python 3.4 以来已被弃用,不应使用。

问题:

这个问题可能与我正在使用的 Python 版本有关吗? 如何解决此错误并使用 CumulusCI 成功运行测试? 是否有我应该应用的解决方法或修复程序来避免此问题? 任何帮助或指示将不胜感激!

自动测试 Salesforce RobotFramework CCI

评论

0赞 rasjani 11/9/2023
最好的办法是降级到 3.11,因为您看到的错误实际上是由于 imp 已在 3.12 中删除

答: 暂无答案