“ shotgun”命令提示符Ruby-“没有这样的文件或目录-uname(Errno :: ENOENT)”

时间:2018-07-04 20:31:42

标签: ruby rubygems sinatra rackup shotgun

我已经将Ruby安装到Windows PC上,并且有一个home.erb文件,其路由在我的app.rb文件中进行了描述。

我的Gemfile当前看起来像:

#Gemfile
source :rubygems

gem 'sinatra'
gem 'sass'
gem 'rake'
gem 'shotgun'
gem 'pry'
gem 'require_all'

group :test do 
gem 'rspec'
gem 'capybara'
gem 'rack-test'
end 

我一直在“使用Ruby启动命令提示符”上运行“捆绑安装”命令。我已经成功地将'sinatra','shotgun','rake'(等)gem安装到了Ruby应用程序上。

但是,每次我运行“猎枪”来查看我的网站时,在终端中都会出现以下错误。

C:/Ruby24/lib/ruby/gems/2.4.0/gems/shotgun-0.9.2/bin/shotgun:102:in ``': No such file or directory - uname (Errno::ENOENT)
    from C:/Ruby24/lib/ruby/gems/2.4.0/gems/shotgun-0.9.2/bin/shotgun:102:in `block in <top (required)>'
    from C:/Ruby24/lib/ruby/gems/2.4.0/gems/shotgun-0.9.2/bin/shotgun:101:in `each'
    from C:/Ruby24/lib/ruby/gems/2.4.0/gems/shotgun-0.9.2/bin/shotgun:101:in `find'
    from C:/Ruby24/lib/ruby/gems/2.4.0/gems/shotgun-0.9.2/bin/shotgun:101:in `<top (required)>'
    from C:/Ruby24/bin/shotgun:23:in `load'
    from C:/Ruby24/bin/shotgun:23:in `<main>'

我的Gemfile在Ruby24 / lib / personalsite下。

任何帮助将不胜感激,因为我刚开始进行网站开发!谢谢!!

2 个答案:

答案 0 :(得分:1)

Shotgun在Windows上不起作用。来自Shotgun docs

  

兼容性

     

由于使用了底层技术,Shotgun仅与支持fork(2)的系统兼容(可能只是POSIX系统上的MRI)。

如果您正在运行Windows 10并喜欢冒险,我建议使用trying out the Windows Subsystem for Linux。这样,您可以在Windows上运行POSIX兼容子系统,并使用Shotgun等工具而不会出现问题。

答案 1 :(得分:1)

Shotgun在Windows上不起作用,但是rerun在Windows 7计算机上运行正常。