一直能看到一些gem里面会有这样一句代码:
$:.unshift File.expand_path('..', __FILE__)
这句话是干什么用的呢
$:就是ruby的一个全局变量,也叫$LOAD_PATH,功能就是java中的classpath,用来加载类库的,当你require某个文件时,ruby就会从这个变量的值去查找,找不到会报LoadError。这个值其实就是一个包含了类库绝对路径的数组。
__FILE__这个变量代表文件自己的文件名,在foo.rb中puts__FILE__,结果就是foo.rb。
File.expand_path可以把路径转换成绝对路径,假设有这样一个文件/Users/kenshin/foo.rb,里面有File.expand_path('..', __FILE__),返回的结果就是/Users/kenshin。
unshift是数组的一个方法,功能就是把指定的值加到数组的最前面,[3,4].unshift(1,2) => [1,2,3,4]
所以这段代码的意思就是把当前文件所在的目录加到ruby的loadpath的最前面,在require文件时,ruby就会先从当前目录下去查找了。
分享到:
相关推荐
标题中的"Find_File_Path.rar_FILE_PA_List All Files_find .file path"暗示了一个关于查找特定类型文件路径的应用程序。这个程序允许用户通过指定一个目录路径,来搜索该路径下所有cpp扩展名的文件,并将结果展示在...
标题"MAC Get File Path(mac拷贝文件路径)"指的是一个专为Mac设计的小工具,它使得用户能够更方便、快捷地复制文件或文件夹的路径。描述中提到的"已经测试可用,直接安装",意味着这是一个经过验证的实用工具,...
项目中碰到的问题
项目中碰到的问题
LogToFile ↓支持一下 Android a simple and practical to print ...Log File Path: If the SD card or external memory exists, the SD Android data package name files Log logs.txt If there is an SD card or ex
标题中的"File-Path-2.08.tar.gz"是一个典型的Linux或Unix系统中的压缩文件名,它包含了一些关键信息。首先,"File-Path"可能是这个软件或库的名称,而"2.08"则代表了它的版本号,这在软件开发中是非常重要的,因为...
Useage: SoFixer (s)> -s sourcefile -o generatefile ... -s --source sourceFilePath Source file path -o --output generateFilePath Generate file path -h --help Display this information
在UiPath中,Lambda表达式和LinQ查询是两种强大的工具,它们可以帮助自动化流程更高效地处理数据。本文将深入探讨如何使用这两种技术来获取指定目录下最近修改时间最接近当前时间的文件。 首先,Lambda表达式是C#中...
print(f"File Path: {file_path}") # 调用方式 list_all_files("/") ``` 5. **跨平台解决方案:Node.js** 使用Node.js的`fs`和`path`模块,可以创建一个跨平台的文件搜索函数: ```javascript const fs = ...
this is a java file ,it can extra anyfile,like jsp,jsf,html.you can extra anything you like,you just need to config the file path and extra start character,and extra end character,for example,you want...
coveragePath: xx.coverage file path. dllPath: the directory of unit test project's dll. xmlPath: the xml path for output. example: Coverage2xml e:\data.coverage e:\debug e:\xx.xml
获取指定站点的文件路径。 根据指定规则获取网站的...https://github.com/Riuujin/get-file-path-chrome-extension更改:1.0.3-更新了相关性以修复安全性问题。 1.0.4-更新了相关性以修复安全性问题。 支持语言:English
解决 exec: "gcc": executable file not found in %PATH%,被墙了,搭梯下的,解压后直接配置 %path% 路径即可,亲测可用。
标题“Header_File_Path_Link.rar_header_file_path”暗示了我们关注的重点是如何在IAR开发环境中设置和链接头文件路径。IAR Embedded Workbench是一款广泛使用的嵌入式系统开发工具,提供了一流的编译器、调试器和...
The fixed default file path is Documents/click.dummer.textthing/notes.txt . If you open the app, this file will be opened, created and used for store. There is no file manager integrated! You can ...
File file new File path ; if file getParentFile exists { file getParentFile mkdirs ; } MatrixToImageWriter writeToFile byteMatrix format file ; MatrixToImageWriter ...
-f,--from <loc> new Apk file path. -k,--keystore <loc> keystore path. -n,--name <name> patch name. -o,--out <dir> output dir. -p,--kpassword <***> keystore password. -t,--to <loc> old Apk file ...
innodb_data_file_path用来指定innodb tablespace文件,如果我们不在My.cnf文件中指定innodb_data_home_dir和innodb_data_file_path那么默认会在datadir目录下创建ibdata1 作为innodb tablespace。 说明 在测试环境...
index.py is inferenct file Doc Window command input :``` python index.py you will start-up the project if you need extrc Doc command, you need add command --weights "your ONNX file path" --source ...
UiPath 提供了一个名为 Download File 的活动,可以解决下载文件相关的问题。使用这个活动,我们可以轻松地将文件下载到指定文件夹中,而不需要编写复杂的代码或脚本。 三、指定文件夹路径 在使用 Download File ...