我有一个标准的宝石的支架,并在bin
目录内我有一个简单的可执行(bin/do_things.rb
):执行
#!/usr/bin/env ruby
require 'my_gem'
MyGem::doThings()
宝石尚未通过安装gem install
,所以运行bin/do_things.rb
没有bundle exec
失败(我的Gemfile
有gemspec
行)。
有没有一种简单的方法让rubygems-bundler在bundler上下文中执行我的脚本?我应该修改我的可执行文件中的$LOAD_PATH
吗?
我可以创建一个包装器脚本来在Bundler下执行,但我宁愿利用rubygems-bundler。
或者我应该只输入bundle exec
?
你能澄清你的脚本的目的吗?这是您仅在开发中使用的东西,还是您宝石的用户使用的东西?无论如何,我不建议直接在可执行文件中修改加载路径。 –
安装时,gem可执行文件的目的是做一些shell实用程序的东西 - 在我的例子中移动一些文件。安装后用户可以访问它。 – Dan