BabeLua常見問題

BabeLua常見問題

 來源: http://blog.csdn.net/babestudio/article/details/27228865windows

怎樣升級BabeLua?

https://babelua.codeplex.com/releases  主站下載(國外站點,速度較慢,可下載最新源碼)babel

http://pan.baidu.com/s/1sjmC169 國內鏡像(國內較快)session

下載BabeLua最新版本進行覆蓋安裝socket

如何查看當前安裝的BabeLua版本號?

經過VS菜單【工具】【擴展和更新】打開擴展和更新界面,找到並選中BabeLua插件,在右側顯示了當前安裝的BabeLua版本號。函數

啓動VS未能正確加載BabeLua

若是啓動VS出現這樣的提示,則須要到【擴展和更新】功能下卸載BabeLua,而後再從新安裝BabeLua便可解決問題。工具

BabeLua暫未實現功能有哪些?

●代碼塊自動完成(如輸入if後自動完成 then else end代碼塊)測試

●附加到進程調試lua

BabeLua不支持的功能有哪些?

●不支持遠程和真機調試url

不能鏈接到IOS,Android,WP8真機進行調試。.net

BabeLua採用注入宿主程序方式進行調試,能夠不用修改宿主程序代碼或Lua代碼就能調試。不一樣於使用socket通訊進行調試的工具(如ZeroBrane),這些工具能夠實現遠程和真機調試。

●不支持調試64位程序

您能夠在編譯exe文件時將目標平臺設置爲X86(即32位),使用編譯出來的32位程序用來調試。

●不支持內存中的Lua代碼添加斷點

啓動調試後「輸出」窗口會顯示加載的Lua文件信息,以下圖:

 

其中tp,url,socket,@Untitled12文件均是內存中的Lua代碼,目前是不能添加斷點的。

 

main.lua,game.lua,config.lua是Lua文件,能夠添加斷點。

自動補全功能與VC++/C#不太一致?

自動補全功能有兩種模式:「完成模式」和「建議模式」(VC++採用「建議模式」,C#默認採用「完成模式」)。

 

BabeLua採用的的是「完成模式」,自動補全規則以下:

●開始鍵入對象的名稱。在可滾動的列表中顯示全部的有效成員。鍵入時,相應的符號將突出顯示。您能夠經過滾動或使用箭頭鍵瀏覽該列表,或者,若是知道成員名稱的前幾個字母,能夠開始鍵入這些字母,直接跳至列表中的該成員。

●若要在代碼中插入突出顯示的成員,請按Tab或Enter。

●按Esc鍵,能夠消除自動補全窗口。

怎樣使用「Lua for Windows」執行Lua代碼?

從Lua官網下載「Lua for Windows」並安裝,下載地址以下:

http://luaforge.net/projects/luaforwindows

安裝"Lua for Windows"可能須要預先安裝VC2005運行時庫,下載地址以下:

http://www.microsoft.com/en-us/download/details.aspx?id=3387

 

Lua scripts folder:Lua代碼的路徑,該目錄下的全部Lua文件將在「Folder Explorer」中列出。

Lua exe path:調試時啓動的exe文件路徑,設置爲「Lua for Windows」安裝目錄下lua.exe文件的路徑。

Working path:工做目錄,與「Lua scripts folder」一致。

Commond line:運行的Lua文件名,下圖示例中運行的Lua文件名是func.lua。

啓動後若是「Lua.exe」窗口一閃而過,能夠在Lua文件的最後面加上一行Lua代碼os.execute("PAUSE")

 

啓動調試後沒法命中斷點是什麼緣由?

1、首先檢查一下您的「解決方案管理器」中是否包含多個項目,若是有多個項目,您須要右鍵點擊Lua項目,將其設置爲啓動項目。

 

2、調試時沒法命中斷點的問題,多數是由於BabeLua沒法正確加載Lua文件所致,此時,BabeLua會在輸出窗口中輸出這個信息,以下圖:

 

到目前爲止,BabeLua是從您設置的「Lua scripts folder」目錄下搜索Lua文件,而後加載Lua文件到VS調試器中。這不一樣於Lua虛擬機(LuaState),是有本身的Lua文件搜索規則(例如package.path)。

爲了確保能正常的進行斷點調試,您目前須要遵循以下過程:

(1)將須要調試的Lua代碼,放到「Lua scripts folder」下,並確保目錄層級正確;

(2)在「Folder Explorer」中打開Lua文件並添加斷點;

3、啓動調試後,查看VS「輸出」窗口的輸出信息,若是出現如下提示信息:

Warning 1000: Lua functions were not found during debugging session

則須要將exe文件對應的pdb文件(和exe文件同時編譯出來的pdb文件)拷貝到exe文件所在目錄下,而後再啓動調試。

調試時觀察不到全部變量的值是什麼緣由?

以下圖,若是「監視」窗口中只顯示了變量的類型,而不顯示變量的值。請在「監視」窗口中點擊右鍵,去掉「十六進制顯示」的勾選項。

去掉「十六進制顯示」勾選項後,結果以下圖:

調試時觀察table類型的變量有時候看不見其成員?

極少數狀況下會出現觀察table類型的變量看不見其成員。

出現的緣由可能有該table下的成員有包含中文字符串或者是userdata(如cocos2d-x建立的對象)。

若是出現該現象,您又想查看table下的成員值,能夠直接將table的成員拖到「監視」窗口中查看,或是鼠標移動到table的成員名稱上進行查看。

同時您能夠提供相關的測試數據給咱們,幫助咱們改進。

調試時觀察cocos2d-x建立對象的值只能看到地址?

以下圖,調試查看visibleSize的值爲0x08FF1CD0

  

須要查看該cocos2d-x對象的值你能夠將該對象的成員拖到「監視」窗口中查看,或是鼠標移動到該對象的成員名稱上查看,以下圖:

  

  

或者經過調用cocos2d-x對象的函數,返回基礎類型的值(整形,字符串等)賦給變量來查看其內容,以下圖:

 

調試過程當中宿主程序異常退出緣由有哪些?

(1)宿主程序自己存在異常退出的現象

先檢查一下直接運行宿主程序,可否正常運行。

(2)使用了非Lua官網下載的Lua庫

使用非Lua官網下載的Lua庫,有可能會致使調試過程當中宿主程序異常退出,向下兼容Lua5.1的庫能夠正常調試。

(3)其餘異常退出的現象

遇到其餘異常退出的狀況您能夠加入BabeLua QQ羣,尋求幫助。

BabeLua穩定性怎樣?

使用調試30-50次可能會出現1-2次crash的狀況。

若是使用非Lua官網下載的Lua庫,向下兼容Lua5.1的庫能夠正常調試。

 

==========================

相關文章
相關標籤/搜索