2012-10-19 78 views

回答

2

下面是我安裝調試,這是稍有不同,但基於勒克斯渲染教程。

首先,創建一個.py文件,我們稱之爲debug.py,它將包含一個函數,我們稍後會調用它來設置調試。將該文件放在與模塊的主__init__.py相同的文件夾中。根據lux-renderer教程,添加以下代碼,更新PYDEV_SOURCE_DIR。

import sys 

def startdebug(): 
    try: 
     # set the PYDEV_SOURCE_DIR correctly before using the debugger 
     PYDEV_SOURCE_DIR = 'C:\Program Files\eclipse\plugins\org.python.pydev.debug_2.5.0.2012040618\pysrc' 

     # test if PYDEV_SOURCE_DIR already in sys.path, otherwise append it 
     if sys.path.count(PYDEV_SOURCE_DIR) < 1: 
      sys.path.append(PYDEV_SOURCE_DIR) 

     # import pydevd module 
     import pydevd 

     # set debugging enabled 
     pydevd.settrace(None, True, True, 5678, False, False) 
    except: 
     pass 

當設置PYDEV_SOURCE_DIR確保您將它指向org.python.pydev.debug_xxxxx。還有另一個文件夾與此類似。爲了確保你有正確的文件夾,它將包含一個/ pysrc文件夾。

現在在您的主__init__.py中,這必須在任何其他導入語句正常工作之前出現。直接在bl_info部分下添加以下內容,因爲奇怪的混合器會自行解析它。

DEBUGGING = True 
if(DEBUGGING): 
    import debug 
    debug.startdebug() 

擁有它可以避免像lux-render教程一樣添加每個文件的跟蹤。

  1. 添加一些斷點在加載項文件夾中的版本,
  2. 切換到調試的角度來看,
  3. 啓動日食調試服務器,
  4. 啓動攪拌器
  5. 運行腳本,它會打到了斷點。

我找到常見問題的人會遇到:

  • 指向的路徑錯誤的PyDev debug文件夾中,確保有一個/ pysrc文件夾
  • 當Pydev的更新,更新PYDEV_SOURCE_DIR作爲debug_xxxxx將有變化
  • 沒有運行eclipse服務器,
  • 在文件的本地副本上設置斷點而不是在攪拌器附加目錄中的版本
  • 保存腳本並不意味着攪拌機將重新加載它,使用imp,禁用/可重新加載或重新啓動攪拌機。
3

Witold Jaworski寫了關於Blender附加程序的非常好的電子書。它包括一步一步的說明如何使用PyDev設置Eclipce來調試Blender附加組件。 Programming Add-ons for Blender 2.5

+0

我在Mac電腦上。我知道這一點,它只適用於你沒有從終端啓動Blender(意味着啓動Blender.app它工作)。因此,你沒有得到任何控制檯信息?此外調試控制檯不能在Eclipse中工作(沒有活動調試器或評估錯誤)任何想法? –

+0

只是爲了給Witold Jaworski學分,它做得非常好 - 很好的工作...... –

+0

您需要針對模塊文件夾中的版本運行調試器。調試器針對獲得註冊的版本運行。通過從Eclipse啓動可以解決這個問題,但輸出將轉到控制檯,只有在Blender關閉時纔會刷新。因此,在安裝的版本上放置斷點後,eclipse將自動打開文件,然後您就可以進行調試了。 – neomonkeus