ModulenotFoundError虽然正确设置了PythonPath

发布于 2025-02-02 02:54:59 字数 1641 浏览 2 评论 0 原文

一切似乎都是正确的,但仍然有错误。 相同的代码在我的本地机器上工作,但在gitlab-ci上不起作用

,我想知道“ pip install -r $ ci_project_dir/scripts/config_creator/insubl.txt.txt”毁了某物

gitlab-ci级

Clone Siteconfigs:
  stage: configure-site
  script:
    - echo $PYTHONPATH
    - apt-get update --yes
    - apt-get install --yes  python3-pip
    - python3 --version
    - pip install -r $CI_PROJECT_DIR/scripts/config_creator/requirements.txt
    - echo $PYTHONPATH
    - export PYTHONPATH=$CI_PROJECT_DIR
    - echo $PYTHONPATH
    - python3 -c "import sys; print(sys.path)"
    - python3 $CI_PROJECT_DIR/scripts/config_creator/__main__.py create-loadtest-config-file --dataset-uri-list ${LOADTEST_SOURCES_DATASET_URI_LIST}

gitlab-ci输出

$ echo $PYTHONPATH
/builds/qa/load-test-ci
$ python3 -c "import sys; print(sys.path)"
['', '/builds/qa/load-test-ci', '/usr/lib/python39.zip', '/usr/lib/python3.9', '/usr/lib/python3.9/lib-dynload', '/usr/local/lib/python3.9/dist-packages', '/usr/lib/python3/dist-packages']
$ python3 $CI_PROJECT_DIR/scripts/config_creator/__main__.py create-loadtest-config-file --dataset-uri-list ${LOADTEST_SOURCES_DATASET_URI_LIST}
Traceback (most recent call last):
  File "/builds/qa/load-test-ci/scripts/config_creator/__main__.py", line 1, in <module>
    from scripts.config_creator.cli.main import main
ModuleNotFoundError: No module named 'scripts.config_creator'

main .py

from scripts.config_creator.cli.main import main

if __name__ == '__main__':
    main()

Everything seems to be correct but still has an error.
The same code works at my local machine but does not work at GitLab-ci

I wonder if "pip install -r $CI_PROJECT_DIR/scripts/config_creator/requirements.txt" ruins something

Gitlab-ci stage

Clone Siteconfigs:
  stage: configure-site
  script:
    - echo $PYTHONPATH
    - apt-get update --yes
    - apt-get install --yes  python3-pip
    - python3 --version
    - pip install -r $CI_PROJECT_DIR/scripts/config_creator/requirements.txt
    - echo $PYTHONPATH
    - export PYTHONPATH=$CI_PROJECT_DIR
    - echo $PYTHONPATH
    - python3 -c "import sys; print(sys.path)"
    - python3 $CI_PROJECT_DIR/scripts/config_creator/__main__.py create-loadtest-config-file --dataset-uri-list ${LOADTEST_SOURCES_DATASET_URI_LIST}

GitLab-CI Output

$ echo $PYTHONPATH
/builds/qa/load-test-ci
$ python3 -c "import sys; print(sys.path)"
['', '/builds/qa/load-test-ci', '/usr/lib/python39.zip', '/usr/lib/python3.9', '/usr/lib/python3.9/lib-dynload', '/usr/local/lib/python3.9/dist-packages', '/usr/lib/python3/dist-packages']
$ python3 $CI_PROJECT_DIR/scripts/config_creator/__main__.py create-loadtest-config-file --dataset-uri-list ${LOADTEST_SOURCES_DATASET_URI_LIST}
Traceback (most recent call last):
  File "/builds/qa/load-test-ci/scripts/config_creator/__main__.py", line 1, in <module>
    from scripts.config_creator.cli.main import main
ModuleNotFoundError: No module named 'scripts.config_creator'

main.py

from scripts.config_creator.cli.main import main

if __name__ == '__main__':
    main()

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

放肆 2025-02-09 02:54:59

我发现了问题,这是因为在更改 pip install 之后随附了一个软件包名称 scripts - &gt; my_scripts 有用。

I've found the problem, it is because of a package name "scripts" comes with after pip install After changing scripts->my_scripts it works.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文