Notice:此問題只在windows中出現。 node
問題現象: bootstrap
好比你在casperjs腳本中引入一個模塊這樣寫: windows
var util = require("d:/my_modules/util"); ....
執行時就會報找不到module,d:/my_modules/util.js app
解決辦法: ui
找到casperjs安裝目錄bin下面bootstrap.js,找到代碼塊: spa
function possiblePaths(path, requireDir) { var dir, paths = []; if (path[0] === '.') { paths.push.apply(paths, [ fs.absolute(path), fs.absolute(fs.pathJoin(requireDir, path)) ]); } else if (path[0] === '/') { paths.push(path); } else { dir = fs.absolute(requireDir); while (dir !== '' && dir.lastIndexOf(':') !== dir.length - 1) { paths.push(fs.pathJoin(dir, 'modules', path)); // nodejs compatibility paths.push(fs.pathJoin(dir, 'node_modules', path)); dir = fs.dirname(dir); } paths.push(fs.pathJoin(requireDir, 'lib', path)); paths.push(fs.pathJoin(requireDir, 'modules', path)); } return paths; }將第二個
else if (path[0] === '/')
改爲 code
else if (path[0] === '/'|| (path.match(/^[A-Za-z]:/) && require('system').os.name=='windows'))