gpt4 book ai didi

ruby - 从 Gemfile 中找出哪些 gems 需要 native c 扩展?

转载 作者:数据小太阳 更新时间:2023-10-29 06:52:59 29 4
gpt4 key购买 nike

我最近才开始将注意力转移到在 TorqueBox 上部署 Ruby 应用程序,这当然是在 Jruby 上构建的。到目前为止,我基本上一直在执行 bundle install,然后在通往 jrubydom 的过程中处理每个 gem,但我遇到了几个 gem,由于需要重新实现大型他们的一部分。

有没有一种方法可以调用 bundler 或 ruby​​gems 来遍历所有 gem 及其 deps 以测试它们是否需要 native c 扩展,然后返回这样一个列表?处理一些更小的项目,或者甚至知道是否值得处理一个项目,将它转移到 jruby 肯定会很好。

最佳答案

基于具有原生扩展的 gems 通常有一个/ext 目录,我做了一个简单的 oneliner 来找到这些 gems:

puts `bundle show --paths`.split("\n").select{|dep| File.directory?("#{dep}/ext") }.map{|dep| dep.split('/').last }.join(', ')

您可以使用以下命令在命令行上执行此操作:

$ bundle show --paths | ruby -e "STDIN.each_line {|dep| puts dep.split('/').last if File.directory?(File.join(dep.chomp, 'ext')) }"

关于ruby - 从 Gemfile 中找出哪些 gems 需要 native c 扩展?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24312872/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com