[英]Python Github pdoc - ModuleNotFoundError: No module named mainFile
I have two files: mainFile.py
and test_mainFile.py
.我有两个文件: mainFile.py
和test_mainFile.py
。 I am trying to generate a documentation using pdoc which works well in a command line, but when I try to do the same thing using GitHub Actions, it fails to find the file.我正在尝试使用在命令行中运行良好的 pdoc 生成文档,但是当我尝试使用 GitHub Actions 执行相同的操作时,它找不到该文件。
Run if [ -f __init__.py ]
if [ -f __init__.py ]
then
pdoc -o docs/ `pwd`
else
pdoc -o docs/ `ls --hide=*.md --hide=*.txt --hide=__pycache__`
fi
shell: /usr/bin/bash -e {0}
env:
pythonLocation: /opt/hostedtoolcache/Python/3.11.0/x64
PKG_CONFIG_PATH: /opt/hostedtoolcache/Python/3.11.0/x64/lib/pkgconfig
Python_ROOT_DIR: /opt/hostedtoolcache/Python/3.11.0/x64
Python2_ROOT_DIR: /opt/hostedtoolcache/Python/3.11.0/x64
Python3_ROOT_DIR: /opt/hostedtoolcache/Python/3.11.0/x64
LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.11.0/x64/lib
Traceback (most recent call last):
File "/opt/hostedtoolcache/Python/3.11.0/x64/lib/python3.11/site-packages/pdoc/extract.py", line 218, in load_module
return importlib.import_module(module)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.11.0/x64/lib/python3.11/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 940, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/home/runner/work/AP1VS-final-project/AP1VS-final-project/project/test_mainFile.py", line 4, in <module>
from mainFile import minMax
ModuleNotFoundError: No module named 'mainFile'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/opt/hostedtoolcache/Python/3.11.0/x64/bin/pdoc", line 8, in <module>
sys.exit(cli())
^^^^^
File "/opt/hostedtoolcache/Python/3.11.0/x64/lib/python3.11/site-packages/pdoc/__main__.py", line 185, in cli
pdoc.pdoc(
File "/opt/hostedtoolcache/Python/3.11.0/x64/lib/python3.11/site-packages/pdoc/__init__.py", line 493, in pdoc
all_modules[module_name] = doc.Module.from_name(module_name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.11.0/x64/lib/python3.11/site-packages/pdoc/doc.py", line 392, in from_name
return cls(extract.load_module(name))
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.11.0/x64/lib/python3.11/contextlib.py", line 81, in inner
return func(*args, **kwds)
^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.11.0/x64/lib/python3.11/site-packages/pdoc/extract.py", line 220, in load_module
raise RuntimeError(f"Error importing {module}") from e
RuntimeError: Error importing project.test_mainFile
Error: Process completed with exit code 1.
My test_mainFile.py where I import mainFile.py looks like this:我导入 mainFile.py 的 test_mainFile.py 如下所示:
"""Tests for main.py."""
import pytest
import builtins
from mainFile import minMax
from mainFile import bubbleSort
from mainFile import insertionSort
from mainFile import quickSort
from mainFile import documentInput
from mainFile import randomNumbers
from mainFile import handleInputNumbers
from mainFile import sort
def test_minMax():
...
When I try to do import mainFile
directly, one of my GitHub actions then fails to find the mainfile.py step earlier while running unit tests.当我尝试直接import mainFile
时,我的 GitHub 操作之一在运行单元测试时无法更早地找到 mainfile.py 步骤。 Everything seems to work fine on my local machine or at other computers, I just cannot find a way to make it pass through GitHub Action.在我的本地计算机或其他计算机上一切似乎都运行良好,我只是找不到让它通过 GitHub 操作的方法。 Both files are in the same directory.这两个文件都在同一个目录中。
Thank you for your help.谢谢您的帮助。
I'm slow.我很慢。 I just put the scripts in the root directory that solved it.我只是将脚本放在解决它的根目录中。 Wrong path错误的路径
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.