发任务的时候因找不到gem包test-unit报错,
出错行:
require 'test/unit' require 'test/unit/testresult'
解决办法如下
1.通过命令查看gem包路径
gem env
2.在发任务之前加入以下代码:
$:.unshift("/var/lib/gems/2.0.0/gems/test-unit-2.5.5/lib")
$:就是ruby的一个全局变量,也叫$LOAD_PATH,功能就是java中的classpath,用来加载类库的,当你require某个文件时,ruby就会从这个变量的值去查找,找不到会报LoadError。这个值其实就是一个包含了类库绝对路径的数组。上面一句把test-unit的路径加入到$:数组的最前端,使程序能够找到test-unit