繁体   English   中英

stack ghci没有加载本地模块?

[英]stack ghci not loading up local modules?

我有

mainLogger.hs
Logger.hs

在我的本地目录中,mainLogger.hs引用Logger模块。

stack ghci:load mainLogger.hs我收到以下错误信息:

mainLogger.hs:6:18:
    Could not find module ‘Logger’
    It is not a module in the current program, or in any known package.

但是,如果我可以编译stack exec -- ghc mainLogger.hs并运行stack runghc mainLogger2.hs或者stack exec -- ghci正确加载模块。

任何人都知道什么阻止stack ghci在本地目录中找到模块?

ps:我没有在这个目录中使用任何cabal文件或stack.yaml文件,所以它回到我的全局stack.yaml配置

如果您同时执行此操作,则应该能够加载它们:

:load Logger.hs mainLogger.hs 

我不知道如果你没有cabal文件,你是否可以让GHCi在当前文件夹中查找丢失的模块,但是如果你创建/初始化一个,则没有必要这样做。

现在应该在最新版本的堆栈中修复此问题。 似乎当模块导入本地模块时,堆栈在其模块搜索路径中不包括本地目录。 在最新的1.5.1。 堆栈的版本,这已经修复 - 所以你应该只能键入

stack ghci mainLogger.hs

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM