3

Eclipse (3.5.2) PyDev モジュール (1.6.4) と Python (2.6.5) を使用して Twisted Application (10.0.0) をデバッグしたいと思います。コマンド ラインからアプリケーションを実行するには、次のように指定します。

c:\python26\python c:\python26\scripts\twistd.py -ny mytwistedapp.py

PyDev を使用してこれを実現するために、新しい PyDev プロジェクトを作成し、mytwistedapp.py と twistd.py をインポートしました。プロジェクトの実行構成の下で、メイン モジュールとして c:\python26\scripts\twistd.py を指定しました。Run -> Debug Configurations を選択すると、パラメーターなしで twistd.py が実行されます (途中までですよね?)。プログラム引数を実行構成 (-ny mytwistedapp.py) に追加しようとすると、twistd.py ではなく PyDev デバッガーによって処理されます。2 つの質問:

  1. twistd.py をメイン モジュールとして指定するのは正しい方法ですか?
  2. もしそうなら、twistd.py に mytwistedapp.py (-ny mytwistedapp.py) を実行するために必要なパラメーターを渡すにはどうすればよいですか?
4

1 に答える 1

3

まず第一に、この件に関してあなたの親切で親切なサポートに本当に感謝します!

EclipseのPyDevモジュールを介してツイストアプリケーションを実行するための鍵は、実行構成でtwisted.pyをメインモジュールとして定義することです。次の手順を使用できます。

これらの手順は、システム上でツイストアプリケーションをすでに実行できることを前提としています。つまり、zopeをインストールしてツイストしたことを意味します。たとえば、次の機能はすでに機能しています。

python twind.py mytwistapp.tac

これらの手順は、PYTHONPATHの定義を含め、EclipseにPyDevをすでにインストールして構成していることも前提としています。1.[ウィンドウ]->[設定]->[PyDev]->[インタープリター(Python)]に移動します。2。[ライブラリ]タブ([システムPYTHONPATH)]で、システムライブラリにPythonインストールの場所(c:\ python26、c:\ python26 \など)が既に含まれている必要があります。 dlls \、c:\ python26 \ libなど)。3.ZopeeggとTwistedフォルダーをシステムライブラリに追加します。たとえば、c:\ python26 \ lib \ site-packages \ twintedおよびc:\ python26 \ lib \ site-packages \ zope.interfaces-3.6.1-py2.6-win32.egg

新しいPydevプロジェクトを作成します

  1. 新しいPyDevプロジェクト(MYPROJなど)を作成します
  2. さまざまなツイストアプリケーションファイルをインポートします
  3. *プロジェクトにtwisted.pyを追加します*。プロジェクトにファイルのコピーを追加するのではなく、既存のファイルにリンクしました([ファイル]->[新規]->[ファイル]->[詳細設定]->[ファイルシステム内のファイルへのリンク]->c:\ python26 \ scripts\twistd。 py)。Eclipse内からアプリケーションを実行するためにtwisted.pyを使用するため、これは重要です。

プロジェクトがセットアップされたので、新しい実行構成を作成します。

  1. 実行->構成の実行
  2. メインタブで次の値を使用します
    • 名前:ツイスト(または何でも)
    • プロジェクト:MYPROJ
    • メインモジュール:$ {workspace_loc:MYPROJ / twistd.py}
  3. [引数]タブで次の値を使用します
    • プログラムの引数:-ny $ {workspace_loc:MYPROJ / mytwistapp.tac}

以上です!重要なのは、twistd.pyをメインモジュールとしてインポートすることです。これにより、コマンドラインから行うのと同じように、プログラム引数をtwsttd.pyに渡すことができます。

于 2011-02-02T05:15:05.543 に答える