You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Haskell/ghci模块搜索路径配置及同目录模块导入问题解决

别担心,我帮你搞定这个Haskell模块导入的问题!你遇到的核心问题是GHCi在单独加载MyApp.hs时,不会自动去查找同一目录下的依赖模块文件,所以才会报找不到Csvparser的错误。这里有几个简单的解决办法:

方法1:同时加载所有相关文件

直接在GHCi里一次性指定两个文件的路径,让GHCi同时编译它们:

:load C:\Test\Haskell\MyApp.hs C:\Test\Haskell\Csvparser.hs

如果已经用:cd C:\Test\Haskell切换到了文件所在的目录,直接用文件名更省事:

:load MyApp.hs Csvparser.hs

这样GHCi就能识别到Csvparser模块,顺利完成导入。

方法2:给GHCi添加模块搜索路径

先告诉GHCi去哪里找你的模块文件,再加载主应用:

  1. 首先设置搜索路径:
:set -iC:\Test\Haskell
  1. 然后加载MyApp.hs:
:load MyApp.hs

这时候GHCi就会自动在你指定的目录里寻找Csvparser.hs了。

额外要注意的小细节

  • 大小写匹配:Haskell的模块名是大小写敏感的!比如如果你的文件是CsvParser.hs(中间的P大写),那导入语句必须写import CsvParser,哪怕Windows系统不区分文件名大小写,GHC也会严格检查这一点。
  • 路径和文件名拼写:再确认下两个文件确实在同一个目录,文件名也没有拼写错误(比如少打了字母、大小写写错)。

内容的提问来源于stack exchange,提问作者sandwood

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 08:06:37