运行命令ocra script.rb --no-autoload --no-enc --add-all-core
会出现以下行的错误initialize: can't convert nil into String (TypeError)
:
doc = Nokogiri::XML(File.open(ARGV[0]))
这是怎么回事?我希望构建可执行文件,以便能够接受任何参数并将该文件用作xml配置。
这似乎需要很长时间,但accept解决方案对我不起作用。
有效的解决方案是在参数中添加--
,然后添加任何伪数据,使执行流与正常一样
例如:
所以你需要做
ocra yourscript.rb -- ANYDATAHERE
只需将其添加到该行上方即可:
exit if defined? Ocra
# skip anything below this line when we're building the exe
除非这行下面有一个require
或其他加载的依赖项,否则应该没问题。