python 如何让 PyDev 编辑器有选择地忽略错误?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 
原文地址: http://stackoverflow.com/questions/1702043/
Warning: these are provided under cc-by-sa 4.0 license.  You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
How can I make the PyDev editor selectively ignore errors?
提问by Pridkett
I'm using PyDev under Eclipse to write some Jython code. I've got numerous instances where I need to do something like this:
我在 Eclipse 下使用 PyDev 编写一些 Jython 代码。我有很多实例需要做这样的事情:
import com.work.project.component.client.Interface.ISubInterface as ISubInterface
The problem is that PyDev will always flag this as an error and say "Unresolved import: ISubInterface". The code works just fine, it's just that I'd rather not have these little white/red X-marks next to my code and have my Problems tab littered with these errors.
问题是 PyDev 将始终将此标记为错误并说“未解析的导入:ISubInterface”。代码工作得很好,只是我不想在我的代码旁边有这些白色/红色的小 X 标记,并且我的问题选项卡上到处都是这些错误。
Is there a way I can add a magic comment or something like that to the end of the line to make PyDev ignore the false error, similar to how you can sprinkle comments like "# pylint: disable-msg=E1101" to make PyLint ignore errors?
有没有办法我可以在行尾添加一个神奇的注释或类似的东西来让 PyDev 忽略错误的错误,类似于你如何可以撒上诸如“# pylint: disable-msg=E1101”之类的注释来让 PyLint 忽略错误?
Also, there's a possibility I'm just doing it wrong when it comes to using Java interfaces in Jython. In which case a little bit of guidance would be very much appreciated.
此外,在 Jython 中使用 Java 接口时,我有可能只是做错了。在这种情况下,我们将非常感谢您的指导。
回答by deets
You can add a comment
您可以添加评论
#@UnresolvedImport
#@UnusedVariable
So your import becomes:
所以你的导入变成:
import com.work.project.component.client.Interface.ISubInterface as ISubInterface #@UnresolvedImport
That should remove the error/warning. There are other comments you can add as well.
那应该消除错误/警告。您还可以添加其他评论。
回答by Kevin
Add the hash character # at the end of the line then with the cursor on the flagged error, press Ctrl-1.  One of the options in the menu will be something like @UndefinedVariable.  Adding this comment will cause PyDev to ignore the error.
在行尾添加井号 #,然后将光标放在标记的错误上,按 Ctrl-1。菜单中的选项之一类似于@UndefinedVariable。添加此注释将导致 PyDev 忽略该错误。
回答by Fabio Zadrozny
You can make the ignore like the other posts suggest, but the real problem is that Pydev cannot find that class... If you add a .jar that contains that class to your PYTHONPATH it should be able to resolve it (or if you have a Java project that has that class, you should be able to mark that project as a Pydev project and add its bin folder to the project PYTHONPATH -- in which case that class should be found too).
你可以像其他帖子建议的那样忽略,但真正的问题是 Pydev 找不到那个类......如果你添加一个包含该类的 .jar 到你的 PYTHONPATH 它应该能够解决它(或者如果你有具有该类的 Java 项目,您应该能够将该项目标记为 Pydev 项目并将其 bin 文件夹添加到项目 PYTHONPATH - 在这种情况下也应该找到该类)。
回答by Tom Green
It is not a PYTHONPATH issue. It is related to importing/using static class-internal members of a Java class. I am getting the same sort of thing all over the place e.g. when trying to use constants in java.awt.Color:
这不是 PYTHONPATH 问题。它与导入/使用 Java 类的静态类内部成员有关。我在所有地方都遇到了同样的事情,例如在尝试在 java.awt.Color 中使用常量时:
import java.awt.Color as Color
borderColor = Color.BLACK # get "Undefined variable from import: BLACK" error
There is no way I've found to import Color.BLACK in this case. Thanks to iceman for at least pointing out the #@UndefinedVariable flag. That helps a lot. Note also that this is NOT a jython problem, the code runs just fine. It's just an issue with PyDev.
在这种情况下,我找不到导入 Color.BLACK 的方法。感谢 iceman 至少指出了 #@UndefinedVariable 标志。这很有帮助。还要注意,这不是 jython 问题,代码运行得很好。这只是 PyDev 的一个问题。

