34

我在 Eclipse 下使用 PyDev 编写一些 Jython 代码。我有很多情况需要做这样的事情:

import com.work.project.component.client.Interface.ISubInterface as ISubInterface

问题是 PyDev 总是会将此标记为错误并说“未解决的导入:ISubInterface”。代码工作得很好,只是我不想在我的代码旁边有这些小的白色/红色 X 标记,并且我的问题选项卡上到处都是这些错误。

有没有办法我可以在行尾添加一个魔术注释或类似的东西来让 PyDev 忽略错误错误,类似于你可以添加像“# pylint: disable-msg=E1101”这样的注释来让 PyLint 忽略错误?

此外,在 Jython 中使用 Java 接口时,我可能只是做错了。在这种情况下,我们将非常感谢您提供一点指导。

4

4 回答 4

57

您可以添加评论

#@UnresolvedImport
#@UnusedVariable

所以你的导入变成:

import com.work.project.component.client.Interface.ISubInterface as ISubInterface #@UnresolvedImport

那应该删除错误/警告。您还可以添加其他评论。

于 2009-11-09T19:18:33.417 回答
30

在行尾添加井号 #,然后将光标放在标记的错误上,按 Ctrl-1。菜单中的选项之一将类似于@UndefinedVariable。添加此注释将导致 PyDev 忽略该错误。

于 2009-11-10T00:25:09.180 回答
6

您可以像其他帖子建议的那样忽略,但真正的问题是 Pydev 找不到该类...如果您将包含该类的 .jar 添加到您的 PYTHONPATH 它应该能够解决它(或者如果您有一个具有该类的 Java 项目,您应该能够将该项目标记为 Pydev 项目并将其 bin 文件夹添加到项目 PYTHONPATH 中——在这种情况下也应该找到该类)。

于 2010-01-06T23:03:59.257 回答
-1

这不是 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.

于 2010-05-11T22:58:21.717 回答