2

Pydev プラグイン インターフェイスを使用してインタープリターを追加および変更する簡単な方法はありますか? 私は pydev 1.6.1 を実行していますが、私の環境で利用可能なインタープリターのリストに基づいて、特定のインタープリターを追加して使用できるようにしたいと考えています。

現在、PythonInterpreterManager に createInterpreterInfo 呼び出しがあることがわかりますが、何もしていないようです。pydev のソースを見ると、それらすべてを追跡するには、設定ページを実際に操作する必要があるようです。

これらを追加するために呼び出すことができるより単純な関数のセットはありますか?

PythonInterpreterManager manager = (PythonInterpreterManager)PydevPlugin.getPythonInterpreterManager(true);
IInterpreterInfo info = manager.createInterpreterInfo(execPath, new NullProgressMonitor());
        manager.addInterpreterInfo(info);

私はすでに上記を行うことができますが、キャッシュするだけで、設定で有効なインタープリターオプションとして表示されません。

私はこれらを追加するためにリフレクションを試みましたが、あまり運がありませんでした。[追加] ボタンと同じようにエディターで addNewInput を呼び出すことができますが、そのインタープリターに関する知識がないと表示されます。ポップアップ設定ページを作成し、getNewInput() のようにリフレクションを介してさまざまなメンバーに値を追加しようとしましたが、設定ページにそれ以上のオプションが表示されません。これが何かが欠けているためなのか、それとも私が作成したポップアップ設定ページが Window->"Preferences" プルダウンを使用してポップアップするページとはまったく関係がないためなのかはわかりません。

4

1 に答える 1

0

APIは次のようなものです。

    IInterpreterManager iMan = PydevPlugin.getPythonInterpreterManager(true);
    IInterpreterInfo interpreterInfo = iMan.createInterpreterInfo("c:/python/python.exe", monitor, false);
    iMan.setInfos(new IInterpreterInfo[]{interpreterInfo}, null, null);

'manager.addInterpreterInfo'が含まれている場合は、おそらく古いバージョンのPyDevが存在することに注意してください...(その呼び出しで、すべてのインタープリターを使用可能に設定するため、構成を保持する場合は、クエリを実行する必要があります。そしてそれらを追加し直します)。

org.python.pydev.editor.codecompletion.revisited.javaintegration.AbstractWorkbenchTestCase.createPythonInterpreterManager(NullProgressMonitor)を参照として使用できます。

于 2012-05-17T22:10:58.850 に答える