How to fix the “msvcrt-ruby18.dll is missing from your computer” error message in Ruby on Rails

本文提供了解决Ruby on Rails中使用cucumber时出现的msvcrt-ruby18.dll丢失错误的方法。通过卸载并重新安装json gem,可以修复该问题。此外,确保Dev Kit已安装,并在安装新gem前关闭Rails服务器或控制台,以避免再次遇到错误。
摘要由CSDN通过智能技术生成

Here’s how to fix that annoying Ruby on Rails popup message: “The program can’t start because msvcrt-ruby18.dll is missing from your computer. Try reinstalling the program to fix this problem.”

This fix applies if you’re using cucumber on Windows.

It turns out the error message is related to the json gem that cucumber depends on. The details and solution are buried in thisthread.

To fix it, you just have to run:


gem uninstall json

followed by:


gem install json --platform=ruby

Notes:
You need to have DevKit installed for this fix: https://github.com/oneclick/rubyinstaller/wiki/Development-Kit

If you get an error when installing the new json gem, make sure a rails server or console isn't running in the background.

The offending version of json for me was 1.4.6-x86-mingw32, so you need to uninstall and install that version: gem install json --version=1.4.6 --platform=ruby

If you install new gems after you make this fix, the error message will pop-up again, so you'll have to uninstall/install the json gem again. If anyone knows a way around this, please let me know.

Anyway, I hope this fix is helpful, that error was driving me nuts!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值