编译依赖于其他类的ruby脚本



在压缩脚本时出现问题。

我有一个main。rb和子文件夹中的一些类,如Subfolder/Class.rb在我看来。rb,我有类声明如下:

要求"。/文件夹/Class.rb"

当我运行我的主脚本时,它工作了。我的exe也可以工作,当它与main.rb在同一位置时。
但是当我把exe放到其他地方时,我得到了这个错误:

C:/Users/MLEING~1/AppData/Local/Temp/ocr53C2.tmp/lib/ruby/site_ruby/1.9.1/rubyge
ms/custom_require.rb:36:in `require': cannot load such file -- ./Parsing/Calibra
tionState (LoadError) from C:/Users/MLEING~1/AppData/Local/Temp/ocr53C2.tmp/lib/ruby/site_ruby
/1.9.1/rubygems/custom_require.rb:36:in `require'
    from C:/Users/MLEING~1/AppData/Local/Temp/ocr53C2.tmp/src/main.rb:9:in `
<main>'

我能以某种方式将依赖项放入我的exe吗?
我还试着像这样包含它们:

ocra main.rb Subfolder/*.rb

您是否尝试过从您的项目中制作红宝石宝石?http://guides.rubygems.org/make-your-own-gem/

您的require正在使用当前目录中的相对路径(您可以看到,因为它以"./"

开头)。

相反,尝试:

需要的子文件夹/Class.rb

并确保$LOAD_PATH包含所有ruby代码解包的位置(您可以通过检查$0来查看(或从$0中找出完整路径并要求具有完整路径的.rb)

相关内容

  • 没有找到相关文章