我刚开始使用Elixir,并开始了一个凤凰项目,我非常喜欢.现在有了rails后台,我习惯于被调试工具所破坏,比如"debugger","byebug"等等; 我想知道Elixir是否有类似的工具?你们是如何调试Elixir应用程序的?
甚至相当于Rubys raise my_object.inspect,也会有奇迹!
谢谢
Paw*_*rok 73
您可以使用 IEx
require IEx
value = {:some, :erlang, :value}
IEx.pry
Run Code Online (Sandbox Code Playgroud)
如果您启动此程序(例如iex -s program.exs,iex -S mix对于某个项目),系统会询问您是否允许在到达此代码时对其value进行检查,并且可供您检查.
您也可以使用IO.inspect允许您输出基本上任何erlang数据结构来进行打印调试.
Mar*_*var 32
调试牛仔应用程序和Phoenix应用程序.
我在Elixir rader http://www.jessetrimble.net/iex-pry-elixir中看到了这篇文章,我想我会在这里总结一下,因为它非常方便:-).
在Rails应用程序(和其他)中,您可以简单地在控制器中放入调试器标签,并且当路径被触发时,它将在调试器标签处中断.
在凤凰城使用撬时,上面会导致
Cannot pry #PID<0.259.0> at web/controllers/posts_controller.ex:8. Is an IEx shell running?
Run Code Online (Sandbox Code Playgroud)
事实证明,Phoenix进程必须在IEx会话中运行,这样做
iex -S mix phoenix.server
Run Code Online (Sandbox Code Playgroud)
相反,你会看到
Request to pry #PID<0.266.0> at web/controllers/posts_controller.ex:9. Allow? [Yn]
Run Code Online (Sandbox Code Playgroud)
Jul*_*hon 10
您可以使用 https://github.com/qhool/quaff中的Quaff.Debug模块
Debug模块提供了一个简单的辅助接口,用于在erlang图形化调试器中运行Elixir代码
我今天用Elixir 1.0.4测试了它,它的工作原理.
| 归档时间: |
|
| 查看次数: |
14117 次 |
| 最近记录: |