【问题标题】:rails generate rspec:install gives no error, but manpagerails generate rspec:install 没有错误,但是手册页
【发布时间】:2013-07-15 15:11:45
【问题描述】:

操作系统:Linux Debian Wheezy
Rails 版本:3.2.0

我想配置 RSpec 以使用 Rails。
我正在使用此说明:https://github.com/rspec/rspec-rails(“安装”部分)。

当我尝试时:

rails generate rspec:install

在成功完成之前手册中描述的所有事情之后,
我明白了:

Usage: rails new APP_PATH [options]

等等

如何解决这个问题?

恕我直言我的 Gemfile 的相关部分

gem 'rails', '3.2.0'

group :development, :test do
        gem 'sqlite3', '1.3.5'
        gem 'rspec-rails', '~> 2.0'
end

(我是 Rails 新手,使用 M. Hartl 手册学习。)
(我已经尝试过:

  • 更改 Rails 版本(4.0.0,然后到 3.2.0);
  • 更改 rspec 版本(最初是 2.8.0,然后到 ~> 2.0);
  • “bundle update”、“bundle install”和“bundle update rspec-rails”几次;
  • 使用“gem install”安装“rspec”和“rspec-rails”;

【问题讨论】:

  • 你确定你在 rails 目录吗?
  • 你所说的'rails dir'是什么意思,迈克尔?我在安装 rails 的目录中:~/myapps/app
  • rails 应用所在的目录?
  • 是的,我在这个目录中。
  • 原因:我使用以下命令创建了这个应用程序:'rails new appname --skip-test-unit',如 M. Hartl 手册中所述。但因此没有创建“脚本”文件夹!因此我无法启动服务器或任何其他脚本。

标签: ruby-on-rails rspec-rails


【解决方案1】:

这是因为当您在 2013 年 6 月 25 日之后安装 gem install rails - 它会安装 rails 4。当您学习课程时,Hartl 要求您复制位于他的 GitHub repo 中的 Gemfile,这实际上是指 Rails ' 3.2.14'。

要解决此问题,请使用 RVM 创建 gemset。

rvm gemset create sample_app

rvm gemset use sample_app

然后在一个空文件夹中创建一个 Gemfile。

mkdir sample
touch Gemfile

将 Hartl 的 (Gemfile)[https://raw.github.com/railstutorial/sample_app_2nd_ed/master/Gemfile] 中的内容复制到您刚刚创建并运行的 Gemfile,

bundle install

安装完所有 gem 后,只需从文件夹外删除即可。

cd .. && rm -rf sample

现在创建一个新的 Rails 项目并跳过自动捆绑安装。

rails new sample --skip-unit-test --skip-bundle

Rails 生成文件后,进入文件夹并再次将 Gemfile 的内容替换为 Hart 的 Gemfile。

现在运行bundle install

最后,您可以创建将自动切换到项目 gemset 的 RVM 文件。

rvm --create --ruby-version use ruby-2.0.0@sample-app

ruby-2.0.0 指的是我系统的活动 Ruby 版本。您需要相应地替换它。

这应该可以正常工作。如果您有任何进一步的帮助,请告诉我。

干杯!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多