2011-05-15 68 views
3

我对RoR完全陌生。我正在关注迈克尔哈特尔的书。我无法进行自动测试运行。请提出发生了什么问题并提供解决方案。未找到命令/使用自动测试安装缺少的gem二进制文件与'软件包安装'

当我运行在内部Rails项目目录命令行“自动测试”我得到以下几点:

-bash: autotest: command not found 

当我运行“捆绑EXEC自动测试”我得到如下:

bundler: command not found: autotest 
Install missing gem binaries with `bundle install' 

这里是的Gemfile

source 'http://rubygems.org' 

gem 'rails', '3.0.3' 
gem 'sqlite3-ruby', :require => 'sqlite3' 

group :development do 
gem 'autotest' 
gem 'rspec-rails', '2.4.1' 
end 

group :test do 
gem 'rspec', '2.4.0' 
gem 'webrat', '0.7.1' 
end 

这里是 '宝石列表'

输出
abstract (1.0.0) 
actionmailer (3.0.7, 3.0.6, 3.0.3, 2.3.5, 1.3.6) 
actionpack (3.0.7, 3.0.6, 3.0.3, 2.3.5, 1.13.6) 
actionwebservice (1.2.6) 
activeresource (3.0.7, 3.0.6, 3.0.3, 2.3.5) 
activesupport (3.0.7, 3.0.6, 3.0.3, 2.3.5, 1.4.4) 
acts_as_ferret (0.4.3) 
arel (2.0.9) 
autotest (4.4.6) 
autotest-fsevent (0.2.5) 
autotest-growl (0.2.9) 
autotest-notification (2.3.1) 
autotest-rails-pure (4.1.2) 
builder (2.1.2) 
bundler (1.0.12) 
capistrano (2.5.2) 
cgi_multipart_eof_fix (2.5.0) 
configuration (1.2.0) 
daemons (1.0.10) 
diff-lcs (1.1.2) 
dnssd (0.6.0) 
erubis (2.6.6) 
fastthread (1.0.1) 
fcgi (0.8.7) 
ferret (0.11.6) 
gem_plugin (0.2.3) 
heroku (2.0.4) 
highline (1.5.0) 
hpricot (0.6.164) 
i18n (0.5.0) 
launchy (0.4.0) 
libxml-ruby (1.1.2) 
mail (2.2.19, 2.2.15) 
mime-types (1.16) 
mongrel (1.1.5) 
mysql2 (0.2.7) 
needle (1.3.0) 
net-scp (1.0.1) 
net-sftp (2.0.1, 1.1.1) 
net-ssh (2.0.4, 1.1.4) 
net-ssh-gateway (1.0.0) 
nokogiri (1.4.4) 
notifier (0.1.3) 
polyglot (0.3.1) 
rack (1.2.2, 1.0.1) 
rack-mount (0.6.14) 
rack-test (0.5.7) 
rails (3.0.7, 3.0.6, 3.0.3, 2.3.5, 1.2.6) 
railties (3.0.7, 3.0.6, 3.0.3) 
rake (0.8.7, 0.8.3) 
RedCloth (4.1.1) 
redgreen (1.2.2) 
rest-client (1.6.1) 
rspec (2.5.0, 2.4.0) 
rspec-core (2.5.1, 2.4.0) 
rspec-expectations (2.5.0, 2.4.0) 
rspec-mocks (2.5.0, 2.4.0) 
rspec-rails (2.5.0, 2.4.1) 
ruby-openid (2.1.2) 
ruby-yadis (0.3.4) 
rubygems-update (1.7.2) 
rubynode (0.1.5) 
spork (0.8.4) 
sqlite3-ruby (1.3.2, 1.2.5, 1.2.4) 
sys-uname (0.8.5) 
term-ansicolor (1.0.5) 
termios (0.9.4) 
test_notifier (0.3.6) 
thor (0.14.6) 
treetop (1.4.9) 
tzinfo (0.3.27, 0.3.26) 
webrat (0.7.1) 
xmpp4r (0.4) 
ZenTest (4.5.0) 
+1

那么,你是否尝试运行'bundle install'? – 2011-05-15 16:43:52

+0

是的..'捆绑安装'工作正常,但自动测试不起作用。 – aspire 2011-05-16 05:23:43

+0

这可能不是你的问题,但我在很多场合看到,在Windows上使用Bundler时,二进制文件没有正确安装。我不得不手动卸载gem并手动安装。环境:Windows 7,jruby 1.6.2,Bundler,Rails3 + – 2012-02-23 19:49:17

回答

7

bundle install --binstubs都会从你的包中的可执行文件安装到项目的本地bin目录(见http://gembundler.com/),那么你可以运行./bin/autotest

+1

我试过了。 – aspire 2011-05-16 05:30:22

+0

您可能会尝试从全局gemset中删除ZenTest/autotest,而是将其安装到基于rvm的gemset中,看看是否有帮助。 – karmajunkie 2011-05-16 13:18:16

+0

我迷失在这里。你能给我指导如何做基于rvm的gemset安装吗? thx – aspire 2011-05-17 05:27:53

5

只需重新启动终端选项卡,然后重试。这应该解决它。

+1

这工作!为我节省了很多时间。泰 – 2014-10-30 11:53:17

0

确保您将自动测试命令放入测试块中。你似乎只有在开发区块。然后,做捆绑安装

0

RVM的用户:

$ rvm gemset create myapp 
$ bundle install 

为我工作。

2

我有一个类似的错误

bundler: command not found: thin 
Install missing gem executables with `bundle install` 

运行以下命令来添加所需的宝石:

bundle install --deployment

-1

我有同样的问题,但我按照这些步骤和下载MySQL的。这个链接会告诉你如何去做。 mysql 现在我有重置密码的问题,但一旦你打开第二个下载文件,你将不得不把临时密码,然后它会要求你更改密码。

相关问题