我为elixir构建了一些有用的库。我把它们都放在十六进制上。我已经在库B中使用了库A,并且我刚刚将库B作为库A的依赖项。当然,库A不会构建。
加载项目时出错:a at / Users / me / fun / a / deps / ar **(混合)尝试从“/Users/me/fun/a/deps/a/mix.exs”加载ArgumentParser.Mix文件,但是已在“/ Users / jistone / fun / a”中定义了另一个具有相同名称的项目/mix.exs“
这是我到目前为止所尝试的内容:
a
a
deps/b/mix.exs
,为path:
deps条目添加a
以指向项目文件夹。mix.exs
和a
更改为b
以指向各自的项目文件夹所有失败并显示相应的错误消息。
所以问题是:当前正在构建的项目是如何让混合识别依赖的?
编辑:更多详情
包a
是用于解析命令行参数的库。包b
是用于生成README.md文件的混合任务。在包b
中,我使用包a
来解析混合任务的命令行参数。现在我尝试使用mix任务为包a
生成README.md,我得到了上述失败。
我可以通过启动iex会话并加载相关的梁文件来解决这个问题,但是如果可能的话,我想让混合任务正常工作......
答案 0 :(得分:0)
我找到了3个解决方案(没有一个完美)
将readme docgen项目构建为escript,然后将其作为依赖项删除。
更改mix.exs文件中的项目名称,生成文档,然后将其更改回来。
使用iex中的-pa arg加载所有梁文件并手动运行代码。