我正在尝试使用相对路径从同一目录中的文件加载Lisp中的文件。
我的文件结构如下所示:
repo/
subdir/
main.lisp
test.lisp
在中,main.lisp
我有许多函数定义,在中,test.lisp
我想测试这些函数。
我尝试使用(load "main.lisp")
and (load "main")
in test.lisp
,以及路径名的多种变体(即,包括./
文件名之前的内容),但是两次都出现以下错误(<filename>
文件名传递给加载函数):
File-error in function LISP::INTERNAL-LOAD: "<filename>" does not exist.
是否可以main.lisp
使用相对路径加载?
这可能是值得指出的是,我正在CMUCL和执行使用的代码SublimeREPL崇高的文本3的内部。
加载文件时,变量*LOAD-PATHNAME*
将绑定到加载文件的路径名*LOAD-TRUENAME*
及其真实名称。
因此,要将文件与当前正在加载的文件加载到同一目录中,可以说
(load (merge-pathnames "main.lisp" *load-truename*))
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句