Errors with shotgun gem and msvcrt-ruby18.dll when

2019-06-07 11:58发布

Greetings,

Every time I make a change to a Sinatra app I'm working on and try to refresh the browser (located at http://localhost:4567/) the browser will refresh and, the console window seems to restart the WEB brick server. The problem is that the content in the browser window does not change.

A friend of mine told me it was a shotgun issue and referred me to rtomayko's shotgun gem:

http://github.com/rtomayko/shotgun

On this page I read that the shotgun gem would basically solve my problem, allowing the changes made to my app to show up in the browser window after I refresh it. So I installed the shotgun gem. The installation was successful. To activate the shotgun function you have to type shotgun before the file name. In this case my Sinatra app's file name is shortener.rb

When I type shotgun shortener.rb to run my Sinatra app I get this error:

alt text http://lh6.ggpht.com/_83PkeFeVNNk/S-ymaYEgDUI/AAAAAAAAArE/rr7uJE3dRj4/shotgun_error.png

I should also mention that before testing the shotgun method out to see if it worked, I installed the mongrel (I realize I should have checked to see if shotgun worked before doing this as installing mongrel has complicated this problem). So on top of getting the error message above I also get this pop up window from Ruby.exe

alt text http://lh6.ggpht.com/_83PkeFeVNNk/S-ymaaWIZKI/AAAAAAAAArA/8qYCGUN8Wo4/msvcrt-ruby18.dll_error.png

I have no idea what msvcrt-ruby18.dll is but I know that installing either shotgun and/or mongrel created this problem.

Where to go from here?

Thanks, Adam

1条回答
狗以群分
2楼-- · 2019-06-07 12:40

The msvcrt-ruby18.dll error is caused by Mongrel. The current release version 1.1.5 is incompatible with Ruby 1.9 and throws this error when it is run. It's easy to solve - just make sure gems is up-to-date:

gem update --system

Then install the new pre-release version of Mongrel:

gem install mongrel --pre
查看更多
登录 后发表回答