私はファイルを持っていますmain.lua
:
require("hello")
hello.lua
およびディレクトリ内のファイルfoo bar! baz
(を含む!
):
module(...,package.seeall)
print("hello from hello.lua")
(Windowsで)環境変数LUA_PATH
をディレクトリに設定すると、次のようになります。
set LUA_PATH="C:\Programme\Lua\5.1\foo bar! baz\?.lua"
奇妙なエラーが発生します:
C:\Programme\Lua\5.1>lua main.lua
lua: main.lua:4: module 'hello' not found:
no field package.preload['hello']
no file '"C:\Programme\Lua\5.1\foo barC:\Programme\Lua\5.1 baz\hello.lua
"'
no file '.\hello.dll'
no file '.\hello51.dll'
no file 'C:\Programme\Lua\5.1\hello.dll'
no file 'C:\Programme\Lua\5.1\hello51.dll'
no file 'C:\Programme\Lua\5.1\clibs\hello.dll'
no file 'C:\Programme\Lua\5.1\clibs\hello51.dll'
no file 'C:\Programme\Lua\5.1\loadall.dll'
no file 'C:\Programme\Lua\5.1\clibs\loadall.dll'
stack traceback:
[C]: in function 'require'
main.lua:4: in main chunk
[C]: ?
非常に奇妙な道を見C:\Programme\Lua\5.1\foo barC:\Programme\Lua\5.1 baz\hello.lua
ますか?感嘆符(バング)の何が特別なのですか?Windowsでそれを正しく行う方法は?Macでは、これは正常に機能しているようです。