通常、リモートでソフトウェア関連の質問をすると、他の誰かがすでにまったく同じことを質問しており、私にも役立つ良い回答を得ていることがわかります。
しかし、今回は私の苦境に対する答えを見つけることができませんでした。
私は現在、Lua プログラミングを 1 つまたは 3 つ上に上げようとしており、モジュールを使用したいと考えています。だから、私はこのような構造を持っています:
main.lua
foo/bar.lua
今、main.luaで私は
require("foo.bar")
失敗する、
main.lua:1 module 'foo.bar' not found:
no field package.preload['foo.bar']
no file 'foo.bar.lua'
no file 'foo.bar.lua'
no file 'foo.lua'
わかりました、何かが間違っている可能性があるので、私は自分が何を間違っているかを確認package.path
するために使用 package.searchpath("foo.bar", package.path)
します。
問題は、どちらが正確に正しいかをpackage.searchpath
解決foo.bar
することです。foo/bar.lua
私が理解しているように、package.searchpathはrequireと同じ方法でモジュールを見つけようとしますが、私の場合はいくつかの不具合があるようです.
奇妙に感じるのはno file 'foo.bar.lua'
、エラー出力での繰り返しです
require の使い方を誤解していませんか?
LuaJIT-2.0.0 を使用してチャンクを実行しています
アップデート:
LuaJIT-2.0.0 を使用してチャンクを実行しています <- これが問題の原因でした。在庫の Lua-5.2.2 は期待どおりに動作します