org.python.util.PythonInterpreterを使用してJythonを Java アプリケーションに埋め込みます。Jython バージョン2.5.2を使用しています。
私が解釈しているPythonスクリプトにはUTF-8リテラルが含まれているため、PEP-0263に従ってスクリプトの上部にPythonソースコードエンコーディングを追加しました:
# -*- coding: utf-8 -*-
私のスクリプトは次のようにコンパイルされます。
String script = // load from file as a single String ...
PythonInterpreter pi = new PythonInterpreter();
PyCode code = pi.compile(script);
result = pi.eval(code);
ただし、Jython は次のトレースに不満を持っています。
[java] ... : encoding declaration in Unicode string
[java] at org.python.core.ParserFacade.prepBufReader(ParserFacade.java:277)
[java] at org.python.core.ParserFacade.parseExpressionOrModule(ParserFacade.java:119)
[java] at org.python.util.PythonInterpreter.compile(PythonInterpreter.java:259)
[java] at org.python.util.PythonInterpreter.compile(PythonInterpreter.java:256)
[java] at org.python.util.PythonInterpreter.compile(PythonInterpreter.java:250)
Jython はスクリプト ファイルで UTF-8 をサポートしていますか?