我需要在我的应用程序中使用模块,但是他们没有被咨询。
在program.pl
我有以下代码:
use_module("/modules/schedule_printer.pl").
在schedule_printer.pl
:
:- module(schedule_printer).
但是,当我输入consult("program.pl").
时
它说当使用需要它的谓词时,它不知道schedule_printer。
输入consult("modules/schedule_printer.pl").
有用。但是,我不想每次都手动查询所有模块。我尝试改变路径,前面没有斜线,绝对路径等,但没有任何作用。
我做错了吗?
注意:我在Mac上使用SWIPL。
答案 0 :(得分:1)
我在模块文件中找到了解决方案,添加:
:- module(<module_name>, [<export_predicates>]).
在程序文件中,您要使用该模块,请写下以下内容:
:- use_module('<folder>/<module_name>.pl').
它不适用于use_module上的双引号,也不会在开头放置/
。