运行时是否可以不编译 lib 目录下的模块或文件mix.compile
?
如果是这样,如何做到这一点,或者至少我可以在 Mix 的源代码中找到它?
你可以给它.exs
扩展名吗?但问题是:为什么你有一些不打算编译的东西lib
?也许你想把它放在别处?
你也可以这样做:
unless some_reason_why_you_would_actually_compile_this_module do
defmodule SomeProject.SomeModule do
...
end
end
另一个(几乎可以肯定是愚蠢的)选项是删除该模块的文件。
如果您有时希望编译模块,您仍然希望执行类似于上面示例的操作,或者将文件移动到项目的另一个顶级子目录(或下)lib/
(并修改项目的 Mix配置以在适当或需要时包含该子目录)。