我开始阅读“开发AngularJS Edge”,我想设置正在使用的各种框架。
这本书使用了nodejs和karma,以及其他几个框架。
我在Win7x32上。
我刚刚将我的nodejs升级到最新的v0.10.18。
我用“npm install -g karma”安装了Karma软件包。这似乎成功完成。
然后我跑了“karma init”,这样做了:
% karma init
>
readline.js:507
this.line = this.line.slice(this.cursor);
^
TypeError: Cannot call method 'slice' of undefined
at Interface._deleteLineLeft (readline.js:507:25)
at suggestNextOption (C:\Users\David\AppData\Roaming\npm\node_modules\karma\lib\init.js:167:9)
at nextQuestion (C:\Users\David\AppData\Roaming\npm\node_modules\karma\lib\init.js:235:12)
at process (C:\Users\David\AppData\Roaming\npm\node_modules\karma\lib\init.js:250:10)
at Object.exports.init (C:\Users\David\AppData\Roaming\npm\node_modules\karma\lib\init.js:352:6)
at Object.<anonymous> (C:\Users\David\AppData\Roaming\npm\node_modules\karma\bin\karma:25:37)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
请注意,此错误几乎与一个月前this person报告的堆栈跟踪相同,但该报告未收到任何响应。
答案 0 :(得分:7)
可能你正在使用Git Bash终端,MinTTY,它没有完全支持TTY。
您有4种方法可以解决问题:
@Override
public void onRequestPermissionsResult(int requestCode,
String permissions[], int[] grantResults) {
switch (requestCode) {
case 21: {
// If request is cancelled, the result arrays are empty.
if (grantResults.length > 0
&& grantResults[0] == PackageManager.PERMISSION_GRANTED) {
// permission was granted, yay! Do the
// contacts-related task you need to do.
} else {
// permission denied, boo! Disable the
// functionality that depends on this permission.
Toast.makeText(getActivity(), "Permission denied", Toast.LENGTH_SHORT).show();
}
return;
}
// other 'case' lines to check for other
// permissions this app might request
}
}
)如果您只需要执行"C:\Program Files\Git\bin\bash.exe" --login -i
等隔离的交互式命令,我建议使用选项1 ,然后返回Git Bash。但是我会尝试一下Powershell。
答案 1 :(得分:2)
在Cygwin中运行npm时出错的原因似乎是npm的一个已知问题。你可以使用这里提到的工作,
答案 2 :(得分:1)
我和MINGW64有同样的错误。
在默认命令提示符下正常运行。
答案 3 :(得分:1)
面对同样的问题。这个
节点node_modules / karma / bin / karma init
答案 4 :(得分:0)
我没有提到的另一个可能的相关点是我从Cygwin rxvt窗口运行这些命令。
我刚尝试完全卸载nodejs并重新安装它。
当我再次启动rxvt窗口并运行“npm install -g karma”时,它失败并显示以下内容:
/c/Program Files/nodejs/npm: line 2: $'\r': command not found
/c/Program Files/nodejs/npm: line 4: $'\r': command not found
/c/Program Files/nodejs/npm: line 5: syntax error near unexpected token `$'in\r''
'c/Program Files/nodejs/npm: line 5: `case `uname` in
这导致我在网上搜索该错误,我发现这个thread,这意味着它根本不支持Cygwin(不幸,但不是一个大问题)。
当我提出一个简单,丑陋,不友好的“cmd”窗口时,业力安装和“业力初始化”都成功完成(或者至少它给了我“初始化”过程中的第一个问题)。
答案 5 :(得分:0)
在我的情况下,问题是我在Windows中使用git bash终端。当我在cmd窗口中运行命令时,它工作正常。
答案 6 :(得分:0)
在github shell命令窗口中运行该命令。为我工作。
答案 7 :(得分:0)
如果你打开karma
文件它只是一个节点脚本,那么执行它的另一种方法是:
node karma init
这在MINGW64 / git bash shell中对我有用