我正在尝试使用Fay将haskell编译为JS,在--include
选项之后使用一个目录,如下所示:
fay --include src\Tmv src\Tmv\Client\Main.hs
src \ Tmv中有一个SharedTypes.hs文件,它定义了Client \ Main.hs中使用的模块Tmv.SharedTypes
。我收到以下错误:
Could not find module "Tmv.SharedTypes". Use -v to see a list of files searched for.
-v选项不起作用。我尝试了几种参数变化,例如。绝对路径,引号,转义(双)反斜杠 配置:fay 0.10.1.0,ghc 7.4.2(i386),Windows 7 x64
答案 0 :(得分:3)
从评论中移除它,因为它显然解决了问题:
当GHC查找源文件时,通常它期望在子目录Foo.Bar
中找到Bar.hs
模块Foo
,相对于它从哪个“根”目录开始。例如,如果以Foo
作为当前目录启动GHCi,则无法找到模块Bar
或者错误,因为模块名称与GHC期望的不匹配。
由于在您的情况下似乎有相同的规则,要导入Tmv.SharedTypes
,您希望SharedTypes.hs
位于任何基本路径的Tmv
子目录中,因此要么创建另一个Tmv
子目录或单独为src
指定--include
应该有效。