Require ruby file without .rb extension?

心不动则不痛 提交于 2019-12-03 23:41:38

问题


I have a ruby file that does not have a .rb extension, and is instead identified as ruby code with a shebang at the beginning of the file: #!/usr/bin/env ruby. I want to require the code in this file in another ruby file, but it seems to be having a problem because require automatically appends the .rb extension to the files it looks for. Is there any way to suppress this behavior and make require only look for the file as the name is given?


回答1:


Use load instead:

load 'file-name'



回答2:


We have scripts the users are allowed to call, which are accessed using symlinks. The symlinks exist in our /usr/local/bin directory, which is automatically included in their path via a minor adjustment to /etc/profile.

Our real scripts exist in a separate directory using the normal Ruby name, ending with ".rb". We can access those using require if necessary.

/usr/local/bin/foo --> /usr/local/share/app_name/foo.rb


来源:https://stackoverflow.com/questions/20416684/require-ruby-file-without-rb-extension

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!