在构建库的同时,是否有可能告诉Cabal
暴露所有模块?
现在,我必须在exposed-modules
的Cabal配置文件部分提供非常长的模块列表。
您需要在Cabal配置文件中列出所有模块。在您的情况下,只需在 exposed-modules:
后面列出模块列表即可。没有更简单的方法来编写模块列表。
Cabal无法自动找到可执行文件或库的文件,因此它依赖于配置文件中的模块列表。与GHC不同,Cabal无法根据源代码中的导入语句来查找模块。如果您没有列出每个模块,则可能能够构建项目(因为GHC可以找到源文件),但其他命令(例如 cabal sdist
)将无法访问未列出的源文件。
cabal init
,它会自动填充 exposed-modules
字段,但你仍需要手动更新该字段。 - Mikhail Glushenkovexposed-modules
зҡ„еӨ–йғЁе·Ҙе…·пјҹжҲ–иҖ…stack
еҸҜд»Ҙеҗ—пјҹ - Erik Kaplun
<...>.cabal
配置文件。在此文件中,您必须提供“Exposed-modules”部分,在其中必须列出您要公开的每个模块。我想公开所有模块。 - Wojciech Danilo.cabal
文件中列出。内部模块也必须在Other-modules
中列出。你是在询问列出所有模块的替代方法,还是在询问如何在不列出模块的情况下使用它? - Heatsink