2010-04-09 41 views
0

我一直在使用Ruby进行一些黑客攻击,我一直在想,是否有一种实用工具或工具可以用来确定Ruby脚本需要的所有宝石。基本上,我一直在发现有一种烦人的做法,那就是使用我没有写过的ruby脚本,我不知道所有的gem依赖关系,我不知道是否所有的gem都已经安装。有没有一种快速获取ruby脚本需要的宝石列表的方法?

回答

1

使用bundler有助于了解所有宝石。但是你无法知道哪些是必需的。因为你可以使用宝石或其他系统来要求你的图书馆员。

0

就我个人而言,我通常只是尝试运行某些东西,如果它暂停安装所需的gem,或者快速查看前几行并查看是否可以找到需求。我不知道一个预先存在的工具,但如果有人告诉我们,我会很高兴。

Ruby是一种脚本语言,因此请继续探索,也许可以自己创建。它会是完美的吗?也许不会,但你会在路上学到一些东西。

f = File.open('rubyfile.rb') 

f.each do |line| 
    if line.include?('require') then 
    puts line 
    end 
end 

有一个起点。这种解决方案错过了一堆东西,比如嵌套的依赖关系,如果一个必需的文件也有一些需求,那么如果你想检查包含什么呢?让它检查项目的整个文件结构并检查任何.rbs?也许让它使用正则表达式而不是字符串来避免在整个脚本中需要单词的其他实例等。

+1

或者只是使用'grep require ruby​​file.rb';) – 2010-04-09 13:09:50

相关问题