红联Linux门户
Linux帮助

Rails中关于Gemfile,Bundle的一些问题

发布时间:2017-01-05 09:50:19来源:linux网站作者:worknova
在学习Ruby on Rails 中碰到了一些书本上没有的问题,再网上多番查阅以及自己的不断实验中,发现了以下几个问题的解决方案:
 
第一个,在创建rails项目的时候使用命令rails new XXX, 提示了如下错误,主要是权限问题。
场景:ubuntu 14.04环境下,打开终端,在home/zxy 目录下建立了文件夹rails_projects_1,然后准备建立rails项目,名为demo_app, 此时出现了如下问题
Error details
Errno::EACCES: Permission denied @ rb_sysopen - /home/zxynova/.bundle/cache/compact_index/rubygems.org.443.29b0360b937aa4d161703e6160654e47/versions
解决方案
1.是用命令 sudo chmod -R 1777 ~/rails_projects_1 ,给该目录赋予可以写入更改执行的权限。
实际使用命令:
zxynova@zxynova-Erazer-X310:~/rails_projects_1$ sudo chmod -R 1777 ~/rails_projects_1  
执行成功。
由于sudo的时间有限,因此
2.直接切换到root用户
首先使用su命令切换到root,然后发现没有任何问题~无论是rails new,还是bundle install ,bundle update都一次性成功。
 
第二个,修改了Gemfile 之后出现了类似
Undefined local variable or method `git_source' for Gemfile,
或者是:
Your Ruby version is 1.9.3, but your Gemfile specified 2.3.3
又或者是:
`x64_mingw` is not a valid platform
主要原因:在Gemfile中引用的插件的版本号码错误导致的异常,或者是权限不够导致的,使用正确的插件版本好,并且重新使用sudo。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/27527.html