2013-07-20 4 views

答えて

5

1 ~~~事前に

おかげで)エラーメッセージにディレクトリへの書き込みを許可するアクセス権を変更することにより。 python.cachedir.skip = true

を設定することにより

2)あなたはこれを読むことができます。

http://www.jython.org/jythonbook/en/1.0/ModulesPackages.html#module-search-path-compilation-and-loading

をさらに洞察するために。

+0

私は、本番環境でこの答えを使って、誰を警告します。あなたのキャッシュを使って猿にローカルアクセスできる人を招待するので、権限を書き込み可能に設定しないでください。潜在的な悪用のようだ! – Carl

2

ディレクトリを書き込み可能にすると、問題は「遠ざかりますが」、大きなセキュリティホールが発生します。誰でも今の世界の書き込み可能なディレクトリに、ユーザーのjpython環境で実行されるコードを導入することができます。

cachedirをスキップするように設定すると、パフォーマンスが低下することがあります(パフォーマンスを向上させる以外のキャッシングスキームを実装する理由)。

代わりに、私は次のことをやった:

私は新しいグループを作成(私の場合の日食では、それはJPythonのだったかもしれません)。私はそのグループにjpythonのユーザーを追加しました。

$ sudo groupadd eclipse 

私はEclipseのプラグインフォルダとその子どものグループを 'eclipse'に変更しました。

/opt/eclipse/plugins $ sudo chgrp -R eclipse * 

/opt/eclipse/plugins $ sudo chmod -R g+w * 
/opt/eclipse/plugins $ find * -type d -print | sudo xargs chmod g+s 

この追加されたグループを書き込み可能に以下のようにI、グループの権限を変更し、再帰的にすべてのディレクトリにS_GIDビットを設定します。この最後のビットは、作成された新しいディレクトリに、同じグループIDをその親として持つようにします。

最後の仕上げは、ユーザーが(022)から007に007

$ sudo vi /etc/login.def 

変化UMASKに設定Eclipse用のumaskを変更しました。 UMASK = 007

5

あなたは例えば、あなたがjythonのを起動するときに「python.cachedir」オプションを設定することでへ&書き込みアクセスを読んでいる場所にキャッシュディレクトリの場所を変更することができます。

jython -Dpython.cachedir=*your cachedir directory here* 

または:

java -jar my_standalone_jython.jar -Dpython.cachedir=*your cachedir directory here* 

あなたはPythonについて読むことができます。ここCACHEDIRオプション: http://www.jython.org/archive/21/docs/registry.html

0

私がこれまでに行うことがわかった最も簡単な修正:

$ sudo chmod -R 777 /opt/jython/cachedir 
関連する問題