Rails初始化校验和错误

9

我正在尝试在Windows上初始化一个新的Rails应用程序,在运行rails new <appname>时,会生成所有内容,直到vendor /assets/stylesheets/.keep,但是当运行bundle install时,Rails会生成以下错误:

Checksum of /versions does not match the checksum provided by server! Something is wrong.

我不确定是什么原因导致了这个问题,因为我没有对rails本身做任何操作。感激任何帮助。

编辑:如果这是由于Windows的敏感性引起的错误,我可以选择转到Linux,但我想先知道问题出在哪里。


总有一种选择可以转向Linux。安装VirtualBox。Ruby和Windows只会带来痛苦。你应该用JRuby更加幸运。 - dre-hh
1
JRuby是一种不同的Ruby,它建立在Java虚拟机之上,与Linux/Windows无关(JRuby可以在两者上运行)。尽管可以使用Cygwin,但建议使用Linux或任何其他*nix,因为您可以使用大多数高质量的Rails学习材料在控制台上输入命令。使用Cygwin也可以实现,但请记住,在其下面有一堆胶带和冰棒棍,而不是Posix... - max
如果你有选择的话,转移到Linux系统,你将节省一个月的时间。 - Tim
似乎是与bundler和gems有关的问题,而不是Rails - 我建议尝试删除Gemfile.lock并重新安装所有现有的gems。顺便说一句,我在Windows上开发,大多数情况下都很好用。当然也有例外,但通过一些谷歌搜索就可以解决它们。 - fylooi
6个回答

21

我在使用Windows时遇到了同样的问题,通过卸载bundler并安装旧版解决了这个问题。

rails new <appname>
gem uninstall bundler
gem install bundler -v 1.9
cd <appname>
bundle install

那就对我产生了影响!


4
这对我也解决了问题,但我甚至不需要安装旧版本。我只是卸载了所有的版本,然后重新安装了最新版。 - dacoinminster
已修复!谢谢! - Adrian Moisa

2
在我的情况下,有一个 *.pre.1 版本,我选择卸载那个特定的版本,然后 "bundle install" 就可以工作了。

1

尝试删除你的ruby cache文件夹,然后再试一次。例如,如果你在Linux机器上使用rbenv并且使用ruby 2.1.5文件夹,则你的路径应该类似于以下内容(不确定Windows上的ruby存储在何处):

 ~/.rbenv/versions/2.1.5/lib/ruby/gems/2.1.0/cache/

删除该文件夹并再次尝试bundle install应该可以解决问题。

如果您转移到Linux机器上,将会更好。


0

在Windows上,根据我的5年经验,我学到的是不要在Windows中搞乱(ror)或(rs)。这里有一个聪明的方法可以做到轻松愉快。我相信您正在使用GitHub作为存储库,作为编辑器,您正在使用Sublime。如果是这种情况,请打开您的gemfile,您将看到检查图像或尝试清除服务器缓存或更新gems。


0

我之前也遇到了这个错误,不过我通过以下方法解决了。我认为你可能没有安装ruby DevKit。

  1. http://rubyinstaller.org/downloads/下载并安装最新的32位Ruby版本(截至目前为止是2.2.4,你需要它来使用web-console gem)
  2. 确保将你的ruby\bin文件夹添加到环境变量中
  3. 诀窍藏在同一页面左下角的“Development Kit”部分。你需要下载并提取正确的DevKit到一个固定位置(截至目前为止,32位的 - DevKit-mingw64-32-4.7.2-20130224-1151-sfx.exe)
  4. 提取文件后,进入主目录并运行“ruby dk.rb init”,接着运行“ruby dk.rb install”(更多信息可以在这里找到)

对我而言,问题得到了解决,现在我可以完全安装并无校验和问题。


0
这个问题始于我尝试运行我的应用程序。我写了rails s,控制台提示说:在任何来源中都找不到sdoc-0.4.1,请运行bundle install以安装缺少的gem。然后我写了bundle install,出现的消息是/versions的校验和与服务器提供的校验和不匹配!有什么问题。 我按照以下步骤解决了这个问题:
  1. bundle install
  2. 控制台提示说:在任何来源中都找不到sdoc-0.4.1
  3. 然后我使用gem install sdoc -v 0.4.1重新安装了这个gem
  4. 我再次尝试写rails s,问题得到解决。

`


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接