lua中使用packagepath解決多個項目的路徑?jīng)_突問題
當多個lua項目在同一臺服務(wù)器中有多個文件的文件名相同時,會優(yōu)先使用路徑中的排在前的項目的文件,導致引用的文件并不是你預期的那樣。
例如:有項目A和項目B,都有一個文件test.lua,而test.lua這個文件在項目A和項目B內(nèi)容都是不一樣的,如果nginx的配置中,lua的packagepath是把項目A放在了前面。那么項目B在引用test.lua的時候,會使用了項目B的test.lua文件,這就導致了錯誤的出現(xiàn)。
那要如何解決這個問題呢?
我們可以在各自的項目中,重新定義packagepath。這樣就避免了路徑?jīng)_突的問題。
例子:
local p = "/diska/htdocs/work/"
local m_package_path = package.path
package.path = string.format("%s?.lua;%s?/init.lua;%s", p, p, m_package_path)
相關(guān)文章
Lua教程(二):C++和Lua相互傳遞數(shù)據(jù)示例
這篇文章主要介紹了Lua教程(二):C++和Lua相互傳遞數(shù)據(jù)示例,本文主要講解了基本數(shù)據(jù)類型的傳遞,比如整形(int)、字符串(string)、數(shù)字(number)及bool值,需要的朋友可以參考下2014-09-09

