Haskell 我是否可以省略或指定一个";“哑巴”;'的值;分解器';在我的书堆里
我将Haskell 我是否可以省略或指定一个";“哑巴”;'的值;分解器';在我的书堆里,haskell,haskell-stack,Haskell,Haskell Stack,我将stack.yaml文件与指定的--resolver一起使用,因此resolver键在stack.yaml中总是被忽略(或应该忽略) 有没有办法在stack.yaml本身中指定这个事实?或者有一个成语来表达这一点。我只想从文件中省略解析器,但这是不允许的。以这种方式使用堆栈不是惯用的做法,但您可以将任何内容放入解析器字段,如果您提供--resolver标志,堆栈将忽略它。例如: $ cat stack.yaml # stack.yaml resolver: none packages: []
stack.yaml
文件与指定的--resolver
一起使用,因此resolver
键在stack.yaml
中总是被忽略(或应该忽略)
有没有办法在
stack.yaml
本身中指定这个事实?或者有一个成语来表达这一点。我只想从文件中省略解析器
,但这是不允许的。以这种方式使用堆栈不是惯用的做法,但您可以将任何内容放入解析器
字段,如果您提供--resolver
标志,堆栈将忽略它。例如:
$ cat stack.yaml
# stack.yaml
resolver: none
packages: []
extra-deps:
- tardis-0.2.0.0
$ stack repl
Unable to load custom resolver none from local file:
/Users/dan/scratch/stack-no-resolver-test/none
Exception: InvalidYaml (Just (YamlException "Yaml file not found: /Users/dan/scratch/stack-no-resolver-test/none"))
$ stack --resolver lts-12.0 repl
...
Configuring GHCi with the following packages:
GHCi, version 8.4.3: http://www.haskell.org/ghc/ :? for help
您只需要能够理解,对于您的用例,“无法加载自定义解析器无”错误消息意味着您忘记在命令行上提供
--resolver
。如果您总是使用--resolver
标志指定解析器,为什么不在stack.yaml
中编写相同的解析器呢?你经常更换解析器吗?@Indigamer:这不是一对一的,我正在努力避免(a)文件激增和(b)在几个地方写同样的东西。例如,一个just_use_resolver.yaml
和另一个add_extra_dep_xyz.yaml
,每一个都适用于多个不同的解析器。如果使用类似resolver:chooseTheResolverOnTheCLI
的方法来记录这一点,我会有点紧张。这样,如果用户仔细阅读,stack
有望在问题上产生错误提示。