【问题标题】:Phoenix CodeReload not working凤凰代码重新加载不起作用
【发布时间】:2018-06-27 17:03:03
【问题描述】:

我有一个 phoenix 应用程序,但是我需要在每次后端更改后手动重新启动服务器。 code_reload 已启用,plug CodeReload 正在使用中。

我尝试过生成一个新项目 (mix phoenix.new --no-brunch),我尝试过不同的编辑器(vim、vscode、atom 和 textedit),我尝试过在我的端点中始终需要plug CodeReload,并且我'我尝试手动将MIX_ENV 设置为dev - 但是当我更改文件时我的项目仍然无法编译。我应该如何追踪问题所在?

运行mix phoenix.serveriex -S mix phoenix.server 时CodeReload 不起作用

【问题讨论】:

  • 您要更改哪个文件?
  • 检查您的配置中的 live_reload 设置,如下所示:see ## Configuration。您可能必须配置哪些文件更改将触发实时重新加载。
  • @Dogbert 模型、控制器、路由器 - 任何后端文件。
  • @guitarman live_reload 仅适用于静态资产,对吗?我正在用 phoenix 编写一个 API,前端在另一个存储库中。即便如此,我也尝试将新目录添加到 live_reload 设置,但也没有用。
  • @cadlac:这不仅适用于静态资产。例如,我添加了我的 gettext *.po 翻译文件。如果在模式列表中添加另一行,则需要为要查看的文件添加正则表达式,而不仅仅是目录。

标签: elixir phoenix-framework elixir-mix


【解决方案1】:

我遇到了同样的问题。就我而言,它是由 VS Code 插件 (https://github.com/iampeterbanjo/vscode-elixir-linter) 引起的。禁用插件使代码重新加载再次工作。

【讨论】:

  • 实际上它适用于 VS Code 用户。卸载iampeterbanjo.elixirlinter 效果很好。这似乎是一个常见问题,编辑器插件会干扰代码重新加载。这里也报告了一个类似的问题,github.com/JakeBecker/vscode-elixir-ls/issues/24,但已修复。
  • 对我来说,它就是 VSCode 本身。我通常一次将应用程序打开数周,显然有一个更新需要重新启动。重新启动 VSCode 后代码重新加载工作。
  • 这不仅仅是 VS Code。我使用neovim,当我的语言服务器出现故障时,它导致代码重新加载停止工作。
猜你喜欢
  • 2018-09-01
  • 1970-01-01
  • 2017-01-29
  • 2016-03-20
  • 2017-08-07
  • 1970-01-01
  • 1970-01-01
  • 2017-04-13
  • 1970-01-01
相关资源
最近更新 更多