我已经在Ruby的类中添加了新方法,我想重新加载整个项目,而不是更改我使用过的每个实例"需要"加载"。有什么方法可以强制整个项目重新加载文件,以便我的命令行脚本将使用最新更改,而不是从以前的加载中缓存的内容?
我尝试过:加载"路径/to/file.rb"
,但我不想每次重新加载文件,我只希望它重新加载用于开发目的。
听起来您在做错事。
您不应该修补require
方法,也不应使用load
而不是require
。
如果您要使用命令行接口构建自己的宝石,那么您应该能够自由编辑GEM lib
文件夹中的任何文件,并在下次运行命令行时使用它。没有缓存的版本。
如果这不是您看到的行为,请尝试使用bundle exec your_command
而不是your_command
运行命令行。旁注,如果您的Ruby使用RVM安装,则不需要bundle exec
。