我的项目目录类似于
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运行,但只运行在最上面的包中的三个文件:__ init__.py,main.py和setup.py。
我已经进入了Project-> Properties-> PyDev - PYTHONPATH,所有源文件夹肯定都列在那里,所以我不确定为什么大多数文件夹都没有被分析。
此外,与this question一样,PyDev似乎没有解析PyLint输出,因为控制台中显示的错误和警告不在“Problems”输出选项卡或编辑器中利润率。这让我觉得它可能是一个版本/回归问题,就像那个问题一样。我可能会尝试使用旧版本的PyLint,看看它是否有效。
我正在使用Eclipse Helios,PyDev 2.2.1,PyLint 0.25.1和Python 2.7。
答案 0 :(得分:3)
PyLint配置(窗口>首选项> pydev> pylint)具有'PyLint的最大进程数',因此,它只会同时对'n'个文件进行分析(因为产生了太多的进程)马上可以让你的机器停下来。)
所以,你可以为分析提出这个数字,并且它应该一次分析更多的文件(我建议为该分析提高它,然后再次减少数量,因为你通常不需要运行太多进程立刻)。
至于输出,可能是PyLint改变了它的格式(如果您认为是这种情况,请将其报告为pydev sourceforge跟踪器中的错误。)
答案 1 :(得分:2)
这可能是由Pylint输出格式的最近更改引起的,该输出格式现在打印列偏移量。您应该联系报告此问题的pydev维护人员。
答案 2 :(得分:1)
我已进入Project-> Properties-> PyDev - PYTHONPATH,所有源文件夹肯定都列在那里。
如果您的意思是您的项目中包含子文件夹(Package1
和Package2
),那么就没有必要了。你应该只有你项目的主文件夹。
我使用PyDev 2.3.0,在清理项目时,Pylint正在处理所有项目的文件。 在PyDev 2.2.2中解决了解析Pylint输出的问题。请参阅我的回答here。
答案 3 :(得分:1)
我刚刚发现,如果您尝试lint的文件不是有效的python模块名称,那么pylint将(静默地)不在其上运行。例如,如果您的项目bin目录中有一个名为do-thing
的可执行python脚本,则它将不会被linted。重命名文件dothing
,然后突然它将起作用(不需要.py
)扩展名。