gem install,主要需要错误消息

3

我正在尝试在一个新的gemset(在rvm中)安装metric_fu gem,但是我遇到了这个错误:

Unable to resolve dependencies: metric_fu requires chronic (~> 0.3.0); churn requires chronic (>= 0.2.3); main requires chronic (~> 0.6.2)

我正在尝试调试依赖关系的问题,但我不理解错误消息中提到的“main”是什么,它要求“chronic(〜> 0.6.2)”。如何解决?
几个月前,我在我的Mac上安装了同样的gem(实际上是metric_fu的包装器metrical),配置非常相似,那时我不记得有任何依赖问题。
我已将rubygem更新到最新版本(1.8.8),以查看是否有所改变,但没有。
2个回答

4

非常感谢ridecar2的提示,以下是我通过bundler解决该问题的方法:

rails new testapp && cd testapp
echo "gem 'metrical'" >> Gemfile
bundle install
cd .. && rm -rf testapp

Bundler会处理依赖关系,然后我就可以在我的项目中使用metrical二进制文件。
$ gem list | grep metric  
metric_fu (2.1.1)
metrical (0.0.5)

记录一下:我不想在我的原始Rails项目中使用metricalmetric_fu,因为像这个railscast建议的那样,保持简单。


2
你需要安装两个版本的chronic(0.3.x和0.6.x)才能使它工作。据我所知,现在还不能做到这一点,因此在metric_fu升级之前你将被困住。

好的,那就是问题所在了,但需要~> 0.6.2版本的main是什么呢,难道是rubygems本身吗?我认为不是,因为我有一个相似的设置,它使用相同的版本(即metric_fu=0.2.2),而且能正常工作。 - Fabio
1
主要内容在这里:https://github.com/ahoward/main。但我不知道它依赖于什么。 - ridecar2
你说得对,我之前没明白main是一个gem的名字,现在我正在解决依赖问题。 - Fabio

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接