6

我正在尝试在 Ubuntu 上安装 rspec-rails,但遇到了一些问题。

这是我的确切步骤:

1) 将我的 Gemfile 更改为:

source 'http://rubygems.org'

gem 'rails', '3.0.0.beta4'
gem 'sqlite3-ruby', '1.2.5', :require => 'sqlite3'

group :development do
  gem 'rspec-rails', '2.0.0.beta.17'
end

group :test do
  gem 'rspec', '2.0.0.beta.17'
end

2)键入“捆绑安装”,我收到以下错误:

/usr/lib/ruby/1.8/fileutils.rb:243:in `mkdir': 权限被拒绝 - /home/steve/.gem/specs (Errno::EACCES)

3)如果我继续我的安装说明并输入“rails generate rspec:install”,我会收到以下错误(但它可能是由 #2 失败引起的)

在这台机器上的可用 gem 中找不到 gem 'rspec (= 2.0.0.beta.17, runtime)'。

我无法在 Google 上找到解决方案。这是我要遵循的教程的链接。我的开发环境是 Ubuntu 10.04、Ruby 1.8.7、Rails 3.0.0 beta 4。

谢谢。

4

4 回答 4

8

您的 .gem 文件夹中可能存在权限配置错误。您可以使用重置权限

$ sudo chown -R steve:steve ~/.gem

或者您可以轻松删除该文件夹并让 bundler/rubygems 重新创建它。

于 2010-07-21T09:21:40.637 回答
2

您不应该将 rspec 也包含在开发配置中吗?

我不能在这里测试 - 但我想你是否包括:

gem 'rspec', '2.0.0.beta.17'

...在您的小组中 :development do...end 块,这可能会解决问题。这对我来说似乎是合乎逻辑的,因为我认为 rspec-rails 需要 rspec 功能本身才能生成必要的文件。如果你制作这样的块,你可能也会更安全:

group :development do
  gem 'rspec', '2.0.0.beta.17'
  gem 'rspec-rails', '2.0.0.beta.17'
end

group :test do
  gem 'rspec', '2.0.0.beta.17'
  gem 'rspec-rails', '2.0.0.beta.17'
end

...这样必要的文件应该包含在两个环境中。我不确定,我只是希望这不会进一步混淆问题(我完全是 Rails 新手!)

于 2010-07-21T09:30:54.087 回答
1

如果更改 ~/.gem 文件夹的所有权不起作用,请尝试检查您当前所在文件夹的所有权。要检查您的文件夹权限类型:

$ ls -la

如果您看到任何显示“root root”的内容,则需要将其更改为您当前的用户帐户。

$ sudo chown -R steve:steve /path/to/folder

于 2012-03-20T17:48:08.350 回答
1

只需删除.bundle应用程序路径中的目录

于 2014-12-17T09:32:59.247 回答