如何在 Eclipse Kepler/Luna 中使用 Jython/PyDev 解决 UnsupportedCharsetException 问题?

7

示例代码:

from java.lang import System

if __name__ == '__main__':
    [System.out.print(x) for x in "Python-powered Java Hello World from within a List-Comprehension."]

令人烦恼的输出:

console: Failed to install 'org.python.util.JLineConsole': java.nio.charset.UnsupportedCharsetException: cp0.
console: Failed to install 'org.python.util.JLineConsole': java.nio.charset.UnsupportedCharsetException: cp0.
Python-powered Java Hello World from within a List-Comprehension.

我尝试了这里这里描述的解决方案。两个方案都失败了(我已经向JVM和PyDev交互式控制台添加了-Dpython.console.encoding=UTF-8参数)。
还有一个关于此问题的问题在这里,四个月前,没有人回答。那么,我该如何解决它?
编辑:我刚刚安装了新的Eclipse Luna,使用Jython安装了PyDev,但仍然出现同样的问题。
7个回答

18

我按照你提到的错误报告(http://bugs.jython.org/issue2222)中的建议,将-Dpython.console.encoding=UTF-8作为VM参数添加到我的程序运行配置中,已经解决了这个问题。在我的情况下,将相同的值设置为Jython解释器的环境变量并没有起作用。

我使用的是Jython 2.7.0和Windows 7上的Eclipse Luna与PyDev。


我在环境变量中尝试了一下,但对我也没有用。由于谁想要为他们编写的每个程序都这样做,所以没有将其放入运行配置中... 回到2.5.4rc1... 没有特殊定义:可以工作。 - ofer.sheffer
对我有用。谢谢! - MarkyMarksFunkyBunch

6
我已通过将Jython从2.7.0降级为2.5.4rc1解决了问题。这似乎是Python 3.4与Jython 2.7.0的问题。
因此,我下载了Jython 2.5.4rc1 - Standalone Jar,并手动更改了Eclipse Luna上的Jython解释器:Window -> Preferences -> PyDev -> Interpreters -> Jython Interpreter -> 删除当前Jython解释器 -> 新建按钮(添加下载的独立.jar文件)。
现在我们必须等待看看Jython bug是否会在下一个版本的Jython中消失(也许这不是Python 3.4的问题,而是Eclipse本身的问题。在所有情况下,我都测试了Kepler和Luna,并且错误仍然存在。我没有使用Python 2.7进行测试,所以我不知道)。
案件结案。

好的,太棒了!出色! - neverwinter

2

我认为这与PyDev(仅限Jython)无关(您可以通过在命令行中运行它进行双重检查)。

我认为您所看到的东西与Jython跟踪器上的以下报告相同:http://bugs.jython.org/msg8448


2

我已经在Neon Eclipse中安装了Python 3.5.2,并发现了同样的问题。

如用户user826366所述,我添加了"-Dpython.console.encoding=UTF-8"作为VM参数,现在我没有看到任何问题。


1

在运行配置中添加“-Dpython.console.encoding=UTF-8”到VM参数。


0
我曾经遇到过类似的问题,解决方法是在Eclipse中指定编码为UTF-8作为VM参数,然后应用并运行即可。
 -Dpython.console.encoding=UTF-8

-1
我曾经遇到过同样的问题,后来添加了以下参数以解决: -Dpython.console.encoding=UTF-8

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接