Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python PyDev中的PyLint仅分析最顶层项目目录中的文件_Python_Ide_Pydev_Pylint - Fatal编程技术网

Python PyDev中的PyLint仅分析最顶层项目目录中的文件

Python PyDev中的PyLint仅分析最顶层项目目录中的文件,python,ide,pydev,pylint,Python,Ide,Pydev,Pylint,我的项目目录类似于 src ProjectName Package1 __init__.py Module1.py Module2.py Package2 __init__.py Module3.py Moduel4.py __init__.py main.py se

我的项目目录类似于

src
    ProjectName
        Package1
            __init__.py
            Module1.py
            Module2.py
        Package2
            __init__.py
            Module3.py
            Moduel4.py
        __init__.py
        main.py
        setup.py
当我执行Project->Clean…(项目->清理…)时,PyLint会运行,但仅在最上面的包中的三个文件上运行:\uuuuu init\uuuuu.py、main.py和setup.py

我已经进入了Project->Properties->PyDev-PYTHONPATH,所有的源文件夹都明确地列在那里,所以我不确定为什么大多数文件夹没有被分析

此外,PyDev似乎没有解析PyLint输出,因为控制台中显示的错误和警告不在“Problems”输出选项卡中,也不在编辑器页边距中。这让我觉得这可能是一个版本/回归问题,因为它是针对那个问题的。我可以试试PyLint的旧版本,看看是否有效


我使用的是EclipseHelios、Pydev2.2.1、PyLint 0.25.1和Python2.7。

这可能是由于PyLint的输出格式最近发生了变化,现在输出列偏移量。您应该联系pydev维护人员报告此情况

我已经进入了Project->Properties->PyDev-PYTHONPATH,所有的源文件夹都列在那里

如果您的意思是您的项目中有子文件夹(
Package1
Package2
),那么就没有必要了。您应该只有项目的主文件夹

我使用Pydev2.3.0,在清理项目时,所有项目的文件都由Pylint处理。 PyDev 2.2.2中修复了解析Pylint的输出的问题。请参阅我的答案。

Pylint配置(窗口>首选项>PyDev>Pylint)具有“Pylint的最大进程数”,因此,它只能同时对“n”个文件运行分析(因为一次生成太多进程可能会使您的机器停止)

因此,您可以在分析时提高这个数字,它应该一次分析更多的文件(我建议在分析时提高这个数字,然后再降低这个数字,因为您通常不希望一次运行太多进程)


至于输出,可能是PyLint更改了其格式(如果您认为是这样的话,请在pydev sourceforge tracker中报告这是一个bug)。

我刚刚发现,如果您尝试lint的文件不是有效的python模块名,那么PyLint将(无声地)不会在其上运行。例如,如果在projects-bin目录中有一个名为
do-thing
的可执行python脚本,它将不会被lint。重命名文件
dothing
,它会突然工作(无
.py
)需要扩展名。

增加进程数修复了文件问题。PyLint网站目前正在进行维护,因此一旦它恢复,我将不得不尝试降级。结果证明我不需要降级PyLint,我需要更新PyDev。我关闭了Eclipse的更新检测,所以我没有意识到有一个新版本发布了。Pydev2.3和PyLint 0.25.1没有问题。