2012-01-28 37 views
2

私のMonkeyRunnerスクリプトにシンプルに存在するモジュール、simplejsonをインポートするのが少し難しいです。欠けているモジュールをmonkeyrunnerスクリプトにインポートするにはどうしたらいいですか?

from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice 
import simplejson 

def main(): 
    print "this is a test" 

if __name__ == "__main__": 
    main() 

はImportError:私はそれを理解したよう

のsimplejsonという名前のモジュール、MonkeyRunnerは、Python 2.5に基づいて、Jythonの2.5を使用しています?。私はJSONモジュールがPython 2.7で提供されていることを知っていますが、Python 2.5のsimplejsonを '/Library/Python/2.5/site-packages/simplejson-2.3.2-py2.5-macosx-10.7-x86_64.egg'の下にインストールしました。

私の質問は、monkeyRunnerスクリプトにインポートされたsimplejsonモジュールを正しく取得する方法です。

答えて

2

Pythonのパッケージをインストールしても、Jythonで使用できるようにはなりません。

Jythonは、前者が後者と互換性があることを目指している点でPython(別名CPython)に基づいていますが、実装は全く異なります。

それはJythonののパスにのsimplejsonのCPythonのバージョンを追加することが可能である:

import sys 
sys.path.append("/Library/Python/2.5/site-packages/simplejson-2.3.2-py2.5-macosx-10.7-x86_64.egg") 
import simplejson 

この「トリック」のsimplejsonパッケージに(少なくとも...私のために)動作するように起こります。他のパッケージでは全く動作しません。

実際にJython用のsimplejsonをインストールすることをお勧めします。詳細については、How can I install various Python libraries in Jython?を参照してください。

関連する問題