为什么在尝试在Hspec中实现多个测试文件时,在Visual Studio中出现ioctl错误,而在Stack中却没有



我正在尝试使用hspec discover:为Haskell中的一个项目实现一个多规范文件测试套件

-- this goes in Spec.hs
{-# OPTIONS_GHC -F -pgmF hspec-discover #-}

这应该允许我使用*spec.hs格式的多个文件,但Microsoft Visual Studio给了我以下编译器错误:

hspec discover:runInteractiveProcess:posix_spawnp:非法操作(设备的ioctl不合适(

Stack编译得很好,所以我不确定这是编译器之间的不匹配,还是Visual Studio编译器正在捕获而Stack没有捕获的输入/输出控制问题。我需要修复吗,还是侥幸?

我在MacOS上遇到了同样的问题。我发现VS代码应用程序没有默认情况下与shell中设置的PATH相同,因此它找不到可执行文件用于hspec discover。

我通过使用将其位置附加到默认位置集来解决问题

sudo launchctl配置用户路径/usr/bin:/bin:/usr/sbin:/sbin:/Users/<用户>/。本地/bin/

请注意,这适用于所有GUI应用程序,需要重新启动才能生效。另请参阅中的OS X 10.10(及更高版本(条目https://apple.stackexchange.com/questions/51677/how-to-set-path-for-finder-launched-applications

相关内容

  • 没有找到相关文章

最新更新