如何使用Jython / PyDev修复Eclipse Kepler / Luna中的UnsupportedCharsetException?

时间:2015-05-25 17:48:03

标签: java python eclipse pydev jython

示例代码:

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.

我已尝试过herehere所述的解决方案。两种解决方案都失败了(我已经将-Dpython.console.encoding = UTF-8参数添加到JVM和PyDev交互式控制台)。

There's also another question about it here from 4 months ago,没有人回答。那么,我该如何解决呢?

编辑:我刚刚安装了新的Eclipse Luna,用Jython安装了PyDev,同样的事情发生了。

7 个答案:

答案 0 :(得分:16)

我已根据您提到的错误报告(http://bugs.jython.org/issue2222)中提到的建议解决了此问题,并添加了 -Dpython.console.encoding = UTF-8作为我的程序的运行配置的VM参数。设置相同的值 Jython解释器的环境变量在我的案例中没有用。

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

答案 1 :(得分:6)

我已经通过将Jython从2.7.0降级到2.5.4rc1来解决了这个问题。这似乎是使用Jython 2.7.0的Python 3.4的一个问题。

所以,我已经下载了Jython 2.5.4rc1 - Standalone Jar,并通过以下方式在Eclipse Luna上手动更改了Jython解释器:Window - >偏好 - > PyDev - >口译员 - > Jython Interpreter - >删除当前的Jython Interpreter - >新按钮(添加下载的独立.jar)。

现在我们必须等待,看看Jython的错误是否会在下一个版本的Jython上消失(也许这不是Python 3.4的问题,但是Eclipse本身存在问题。在所有情况下,我都测试了两者Kepler和Luna,错误仍然存​​在。我没有使用Python 2.7测试,所以我不知道。)

案件结案。

答案 2 :(得分:2)

好吧,我认为这与PyDev(只有Jython)没有关系...(你可以通过在命令行中运行来仔细检查)。

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

答案 3 :(得分:2)

我在Neon eclipse中安装了Python 3.5.2并发现了同样的问题。

将-Dpython.console.encoding = UTF-8添加为user826366所述的VM参数。我现在没有看到任何问题。

答案 4 :(得分:1)

添加" -Dpython.console.encoding = UTF-8"到运行配置 - > VM参数。

答案 5 :(得分:0)

我有一个类似的问题,我所做的就是在我的案例中指定编码为eclipse中的UTF-8作为VM参数,应用并运行。

 -Dpython.console.encoding=UTF-8

答案 6 :(得分:-1)

我遇到了同样的问题并在下面添加了要解决的论点 -Dpython.console.encoding = UTF-8