找不到 VS Code 中的 HUnit构建依赖问题

问题描述

更新:所以,在进一步挖掘之后,我实际上在 StackOverflow 上找到了一个解决方案(对于制作一种重复的线程表示歉意)。对于将来回顾这个的任何人,使用命令“cabal v2-install --lib HUnit”然后“cabal v2-repl”运行良好!这是帮助我的线程:Can't cabal install hunit

我目前正在尝试让 HUnit(用于 Haskell)与 Visual Studio Code 一起工作,但是,我收到错误,我不知道它们的含义。不幸的是,我已经在互联网上浏览了几个小时,但我真的找不到任何解决我问题的方法。如果有人对此有任何想法,我将不胜感激!我也遇到了专门为 Windows 寻找解决方案的问题,而且由于我是 Windows 用户,这一直是一个相当大的问题。

因此,问题是在我的带有 Haskell 文件文件夹中的 powershell 中运行“cabal v2-repl”时出现以下问题:

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]

总而言之,我很新,不太确定这是如何工作的,因此非常感谢您的帮助!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)