Ruby 如何确保gem';s可执行文件从gempec加载依赖项?

Ruby 如何确保gem';s可执行文件从gempec加载依赖项?,ruby,gem,rubygems,bundler,gemfile,Ruby,Gem,Rubygems,Bundler,Gemfile,在我的gem的gempec中,我使用显式版本指定另一个gem(anothergem)的依赖项,比如1.12.2。如果系统已经有另一个gem版本,我的gem的可执行文件将需要错误的版本。所以 如何确保我的gem的可执行文件加载gem依赖项的预期版本? 明确地说,可执行文件(mygemexec)应该能够从任何地方调用,而不需要bundle exec。例如: gem install mygem mygemexec 编辑:我在gempec中设置依赖项版本的方式是: spec.add_dependenc

在我的gem的gempec中,我使用显式版本指定另一个gem(
anothergem
)的依赖项,比如
1.12.2
。如果系统已经有另一个gem版本,我的gem的可执行文件将需要错误的版本。所以

如何确保我的gem的可执行文件加载gem依赖项的预期版本?

明确地说,可执行文件(
mygemexec
)应该能够从任何地方调用,而不需要
bundle exec
。例如:

gem install mygem
mygemexec
编辑:我在gempec中设置依赖项版本的方式是:

spec.add_dependency 'anothergem', '1.12.2'

这应该已经发生了。当您调用gem可执行文件时,Ruby将对其进行设置,以便使用正确的gem版本。如果您在开发中调用可执行文件,使用正确的依赖关系可能会出现问题,但这似乎不是您在这里要问的。@matt是的,“应该已经发生了”是我所期望的,但它肯定在我的系统上使用了较旧版本的gem。我不确定在developmentBy development中调用可执行文件是什么意思。我的意思是,如果您尝试直接从源文件夹运行可执行文件,而不将其安装为gem,那么gem中指定的依赖项将不会被使用。你确定你的问题中的版本正确吗?Ruby默认使用最新版本。我认为你需要提供更多关于你的情况的信息,以便找到解决办法。