2

私はLinuxが初めてなので、私の質問が本当に基本的なものである場合は、ご容赦ください。次の行を含むコード スニペットがあります。

    require("axf.sf")

このコードを含むファイルを見つけようとしています。サーバーで次のコマンドを試しました。

    find / -name axf.sf
    find / -name axf.sf*

しかし、私はそれを見つけることができません。プログラムが動作するので、コードが存在することを知っています。

任意の提案をいただければ幸いです。

4

1 に答える 1

3

Luaは、多くの言語と同様に、必要なモジュールを検索するための「パス」の概念を持っています。

いくつかの方法で構成できますが、通常は次のようなものです。

./?.lua;/usr/local/share/lua/5.1/?.lua;/usr/local/share/lua/5.1/?/init.lua;/usr/local/lib/lua/5.1/?.lua;/usr/local/lib/lua/5.1/?/init.lua;/usr/share/lua/5.1/?.lua;/usr/share/lua/5.1/?/init.lua

=package.path( Luaプロンプトで入力を確認することで、自分のものが異なるかどうかを確認できます)

デフォルトのパッケージサーチャーは、最初にパッケージ名(この例では「axf.sf」)を取得し、各ドットをOSのディレクトリセパレーターに置き換えます。(Linuxを使用しているため、例では「axf / sf」)。次に、各パターンのを変換されたパッケージ名に置き換え、?システムに存在する最初のパターンを使用します。

だから、それは検索します

./axf/sf.lua
/usr/local/share/lua/5.1/axf/sf.lua
/usr/local/share/lua/5.1/axf/sf/init.lua
/usr/local/lib/lua/5.1/axf/sf.lua
/usr/local/lib/lua/5.1/axf/sf/init.lua
/usr/share/lua/5.1/axf/sf.lua
/usr/share/lua/5.1/axf/sf/init.lua
于 2013-03-14T19:51:22.440 に答える