2011-07-20 31 views
6
require "utils.lua" 
stdin:1: module 'utils.lua' not found: 
     no field package.preload['utils.lua'] 
     no file 'D:\blizzard\Projects\Lua' 
     no file '.\utils\lua.dll' 
     no file 'D:\blizzard\Projects\Lua\utils\lua.dll' 
     no file 'D:\blizzard\Projects\Lua\loadall.dll' 
     no file '.\utils.dll' 
     no file 'D:\blizzard\Projects\Lua\utils.dll' 
     no file 'D:\blizzard\Projects\Lua\loadall.dll' 

Neden LuaJIT .lua yerine .dll için arama yapar ve bu davranışı nasıl düzeltebilirim?LuaJIT, modül hatası gerektirir

cevap

11

require utils (ditch the .lua) yapmalısınız ve utils.lua, package.path değişkeninizde olmalı ya da LUA_PATH ortam değişkeni olarak iletilmelidir. package.loaders, require() ve package.path

+0

hakkında Lua Referans Kılavuzunda

diğer bilgiler "ve utils. Lus ... LUA_PATH olarak iletilmesi gereken". Bunu anlamadım. Utils.lua yerleştirdiğim dizini LUA_PATH env. değişken ve ".lua" ihmal ettim ama bu yardımcı olmaz. – DSblizzard

+0

utils.lua. Pardon yazım yanlışı. Dolayısıyla, package.path değişkeniniz Lua'nın kütüphaneleri aradığı birçok dizin içerir. utils.lua bunlardan birinde olmalıdır. – jpjacobs

+0

Tamam, LUA_PATH'yi D: \ blizzard \ Projects \ Lua \? Olarak değiştirdim ve işe yaradı. – DSblizzard

İlgili konular