Haskell 未在VS代码中找到HUnit(生成依赖项问题)
更新:所以,在进一步挖掘之后,我实际上在StackOverflow上找到了一个解决方案(很抱歉制作了一个复制线程)。对于将来回顾这一点的人来说,使用命令“cabalv2install--libhunit”和“cabalv2repl”效果很好!这是帮助我解决问题的线索: 我目前正试图让HUnit(对于Haskell)使用VisualStudio代码,但是,我遇到了一些错误,我不知道它们是什么意思。我已经在互联网上搜索了几个小时了,不幸的是,我找不到任何解决我问题的方法。如果有人对此有任何想法,我将不胜感激!我也有一个问题,特别是为Windows找到解决方案,因为我是一个Windows用户,这一直是一个相当大的问题 因此,问题是,当在我的文件夹中的powershell中使用Haskell文件运行“cabal v2 repl”时,会出现以下问题:Haskell 未在VS代码中找到HUnit(生成依赖项问题),haskell,testing,dependencies,cabal,hunit,Haskell,Testing,Dependencies,Cabal,Hunit,更新:所以,在进一步挖掘之后,我实际上在StackOverflow上找到了一个解决方案(很抱歉制作了一个复制线程)。对于将来回顾这一点的人来说,使用命令“cabalv2install--libhunit”和“cabalv2repl”效果很好!这是帮助我解决问题的线索: 我目前正试图让HUnit(对于Haskell)使用VisualStudio代码,但是,我遇到了一些错误,我不知道它们是什么意思。我已经在互联网上搜索了几个小时了,不幸的是,我找不到任何解决我问题的方法。如果有人对此有任何想法,我将
Resolving dependencies...
cabal.exe: Could not resolve dependencies:
[__0] trying: PKDTicTacToe-0.1.0.0 (user goal)
[__1] unknown package: HUnit (dependency of PKDTicTacToe)
[__1] fail (backjumping, conflict set: HUnit, PKDTicTacToe)
我假设这与我的.cabal文件中的构建依赖项有关,因此这是我的.cabal文件:
cabal-version: 2.4
name: PKDTicTacToe
version: 0.1.0.0
build-type: Simple
executable PKDTicTacToe
main-is: TestFile.hs
build-depends: HUnit, base^>=4.15.0.0
hs-source-dirs: .
default-language: Haskell2010
我将它与其他人制作的其他项目进行了比较,从外观上看,似乎您只需要在“build depends”中使用HUnit,然后将其导入到“main is”下声明的文件中(在我的示例中是TestFile.hs)。所以在我的测试文件中,我基本上定义了自己的偶数函数来测试它,并分配了一些测试。虽然我不完全确定为什么会发生这个问题,但我也将在下面展示这段代码,以防有所帮助
module TestFile(myEven) where
import Test.HUnit
myEven :: Integer -> Bool
myEven x = if x `mod` 2 == 0 then True else False
test1 = TestCase $ assertEqual "Even 0" True (even 0)
test2 = TestCase $ assertEqual "Even 4" True (even 4)
test3 = TestCase $ assertEqual "Even 5" False (even 5)
performTests = runTestTT $ TestList [test1, test2, test3]
总而言之,我是一个新手,不太清楚这是怎么回事,所以任何帮助都将不胜感激