2012-04-18 6 views
2

저는 pydev를 사용하여 pyclutter 응용 프로그램을 개발하고 있습니다. 불투명도는 인터프리터 경로에 추가되고 강제 내장 명령 목록에 있지만 불규칙한 네임 스페이스의 모든 객체는 누락 된 가져 오기 오류 (즉, 빨간색 누적)로 표시됩니다.pydev가 강제 내장 명령을 사용하도록 강제 할 수있는 방법이 있습니까?

pydev의 인트로 스펙 션을보다 강력하게 만들 수있는 또 다른 방법이 있습니까? Pygobject를 사용하여 공유 C 라이브러리에서 객체를 꺼내기 때문에 난독 화의 내용을 조사하는 것이 평소보다 어려울 것이라고 생각합니다. 그러나 IDE의 Python 디버거를 사용하여 모듈의 내용을 살펴보면, 패키지가 모두 표시됩니다.

감사합니다,

답변

2

글쎄, 당신은 (예를 들어, 'mypy.lib')의 PyDev는, 쉘을 만들고 그 안에 해당 모듈을 가져옵니다 (예 : 수입 mypy.lib)이 객체를 추가 할 경우 수행합니다 그것에있는 dir (ie : dir (mypy.lib)).

dir()이 명령 행에서 작동하지만 코드 완성에서 작동하지 않으면 PyDev에서 문제가 될 수 있지만 실제로 문제는 일부 라이브러리가 실제로는 그렇지 않다는 것입니다 '알려진'속성에 액세스 할 때 dir()에있는 것을 노출합니다.이 경우 실제 인터페이스를 사용하는 모듈을 만드는 유일한 방법은 실제 인터페이스 (필요에 따라 액세스하는 모듈)를 작성하거나 " 사전 정의 된 완료 "- http://pydev.org/manual_101_interpreter.html

편집 : 위의 경우 도움이되지 않으면 '일반적으로'PYTHONPATH 구성상의 문제가 발생합니다 (예 : 모듈을 추가 한 후에는 인터프리터 설정과 누락 된 경로 추가 - 그냥 추가/삭제 실제로 트릭을 수행하지만, 실제 경로 자체에서 아무 것도 변경되지 않으면 인터프리터 구성 페이지로 이동하여 '적용'을 눌러 재 해석 할 인터프리터를 선택할 수 있습니다.) - 이것이 여전히 당신의 쟁점이 아닙니다. (다만, 여기에 난장판을 설치했는데 제대로 작동하고 있습니다.)

+0

이 클래스가 디렉토리 (모듈)에 http://cl.ly/2e1b1U0s2t1B2h0g1c3g 내가 더블 나는 것을 doublechecked 한 강제 내장 명령 http://cl.ly/0I001j3U3q263r1C1e2u – PerilousApricot

+0

에 있다고 확인했습니다 것으로 보인다 올바른 디렉토리가 시스템에 추가됩니다. PYTHONPATH http://cl.ly/3W182s3I2b0h1m160q1P – PerilousApricot

+0

사실, PYTHONPATH가 올바르지 않습니다. site-packages/clutter는 사이트 패키지 만 추가하면 안됩니다 (사실 사이트 패키지 아래에 다른 디렉토리를 추가하면 안됩니다 - PYTHONPATH는 라이브러리가 설치된 상위 디렉토리 만 포함해야합니다. (이것은 차례로'__init __. py'를 포함하고 있습니다) –

관련 문제