Tho*_*ens 7 ruby ruby-on-rails bundler windows-subsystem-for-linux
我希望 WSL2 可以解决这些问题并使这个问题在接下来的 6 个月左右过时,但与此同时,我觉得在我的主要笔记本电脑上运行最前沿的 Windows 或其他预览版本并不舒服。
有时,当我在WSL 内安装 Ruby gems(bundle install或bundle install --path=vendor/bundle)Permission denied时,在安装带有本机扩展的 gem 时会出错。
这个错误的最新化身是这样的:
Permission denied @ rb_file_s_rename - (./.gem.20191006-12131-11th7ub/byebug, /home/thomasowens/project/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0-static/byebug-11.0.1/byebug)
Run Code Online (Sandbox Code Playgroud)
为了解决它,我只是删除了/home/thomasowens/project/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0-static/byebug-11.0.1/byebug,重新运行了 bundle 命令,它成功了。有时,我需要多次执行此操作,但通常有效。
最后,我可以正确安装所有 gem,但是在设置新项目时很难,并且有许多带有本机扩展的 gem。当我引入新的 gem 或更新导致需要更新本机依赖项的 gem 时也是如此。
我没有找到太多关于这个问题的信息,但我想知道是否可以做些什么来减轻需要bundle install多次运行才能在 WSL 下设置和运行项目的痛苦。
我遇到的问题可能与 Visual Studio Code 的文件监视有关。它反映在针对 WSL 的两个 GitHub 问题中 - 1956和3395。Visual Studio Code 有remote.WSL.fileWatcher.polling,可以启用它来解决此问题。但是,文档指出,大型工作区会对性能产生影响,因此可能还需要调整remote.WSL.fileWatcher.pollingInterval设置。WSL2 将解决这些问题。
自从启用此标志后,我在运行 VS Code 时没有看到错误。
现在 WSL2 已推出,我可以禁用此标志,并且该问题没有再次出现。看来如果您可以升级到 WSL2,那可能是首选解决方案。但是,对于尚未升级或无法升级的人来说,切换remote.WSL.fileWatcher.polling和remote.WSL.fileWatcher.pollingInterval应该很好。
| 归档时间: |
|
| 查看次数: |
1353 次 |
| 最近记录: |