6

私はこのチュートリアルに従っています: http://www.raywenderlich.com/3932/how-to-create-a-socket-based-iphone-app-and-server

しかし、私が書くとき

reactor.listenTCP(80, factory)

Eclipseは、それが未定義の変数であることを教えてくれます..私はツイストをインストールし、インポートのオートコンプリートを取得できますが、これは機能しません.. !

編集:完全なコード:

from twisted.internet.protocol import Factory
from twisted.internet import reactor

factory = Factory()
reactor.listenTCP(80, factory)
reactor.run()
4

2 に答える 2

17

これは、Eclipse/PyDev が静的分析を実行する方法に関連する既知の問題です。

よく見ると、reactorオブジェクトはインポート時に twisted.internet モジュールに実際には存在しません。モジュールが空です。

Eclipse/PyDev がバイトコードをコンパイルしようとすると、静的解析はreactortwisted.internet モジュール内のオブジェクトを認識せず、実際には実行時に存在する (説明できない Twisted マジックによって登録されている) にもかかわらず、未定義変数としてマークします。 )。

私が使用する回避策は簡単です。エラーを抑制するために #@UndefinedVariable を追加するだけです。

reactor.run() #@UndefinedVariable

出来上がり。IDE エラーはもうありません。

于 2012-04-25T00:19:57.880 に答える
-1

日食の外で実行してみてください。それが機能する場合、それは日食の問題です。

于 2012-04-24T22:34:12.237 に答える