我有一个Sinatra应用程序,我会不断升级(目前仅限于本地)。问题是我对Ruby一无所知--我的朋友给我做了这个应用程序,它已经漂亮地工作了一年多了。
要在localhost上查看站点,我执行以下操作:
bundle exec unicorn -l 9000我不明白这一点,没必要理解。我知道我正在使用unicorn gem来运行指向端口9000的应用程序(由于旧打印机冲突)。
今天,我得到了这个错误:
in `evaluate': compile error (SyntaxError)
syntax error, unexpected ':', expecting $end它引用了我的gem文件的第16行,即sinatra-contrib gem:
gem "sinatra-contrib", require: "sinatra/reloader"我以前从来没有遇到过这个错误。从来没有接触过gem文件,它已经工作了一年了。我认为我最近做的唯一一件可能影响到我的环境的事情是安装了一个名为Wordless的gemset:
rvm use 1.8.7@wordless --create --default && gem install therubyracer sprockets compass coffee-script thor yui-compressor && rvm wrapper 1.8.7@wordless wordless compass ruby我很欣赏洞察力,希望我能开始学习一些关于管理ruby gem的东西。谢谢。
发布于 2013-06-28 11:58:40
您之前使用的是Ruby1.9。您引用的行是1.9格式,Ruby 1.8无法理解。
当你安装Wordless时,你说:
rvm use 1.8.7@wordless --create --default这使得Ruby 1.8.7成为默认的解释器。要切换回之前使用的任何内容,请执行以下操作:
rvm list rubies然后:
rvm use [the 1.9.x you found in the list above] --defaulthttps://stackoverflow.com/questions/17356249
复制相似问题