我开始使用Yeoman的Angular.js应用程序yo angular,其中包括Karma测试.然后,grunt test合理失败,因为Karma找不到任何浏览器.(browsers尚未在应用程序的node_modules/karma配置文件中设置.)
我正在通过SSH进行远程计算机的开发,我认为(如果我错了,请告诉我)/usr/bin/chromium-browser安装Chrome是毫无意义的.
那么可以在没有任何浏览器的情况下运行Karma吗?
我试图yo angular在一个新的项目目录中运行,但它给了我一路上的ENOENT错误.是的我看过这个类似的问题,但它的解决方案对我不起作用.
我在运行前在空的新项目目录上运行了这些东西yo angular:
touch .npmignore
npm cache clear
npm cache clean
Run Code Online (Sandbox Code Playgroud)
但我仍然得到:
npm ERR! Error: ENOENT, lstat '/home/ubuntu/app_c/node_modules/grunt/ internal-tasks/bump.js'
npm ERR! If you need help, you may report this *entire* log,
npm ERR! including the npm and node versions, at:
npm ERR! <http://github.com/npm/npm/issues>
npm ERR! System Linux 3.2.0-54-virtual
npm ERR! command "/home/ubuntu/local/bin/node" "/home/ubuntu/local/bin/ npm" "install"
npm ERR! cwd /home/ubuntu/app_c
npm ERR! node -v v0.10.26
npm ERR! npm -v 1.4.3
npm ERR! path /home/ubuntu/app_c/node_modules/grunt/internal-tasks/bump. …Run Code Online (Sandbox Code Playgroud) 我有2个ENOENT错误.我知道"ENOENT"的意思是"Error NO ENTrance",但这两个ENOENT究竟缺少什么?这些错误消息是什么意思?我想破译它们以便能够调试问题.
npm ERR! Error: ENOENT, lstat '/home/ubuntu/.npm/iconv-lite/0.2.11/package/encodings/table/gbk.js'
npm ERR! If you need help, you may report this *entire* log,
npm ERR! including the npm and node versions, at:
npm ERR! <http://github.com/npm/npm/issues>
npm ERR! System Linux 3.2.0-54-virtual
npm ERR! command "/home/ubuntu/local/bin/node" "/home/ubuntu/local/bin/npm" "install"
npm ERR! cwd /home/ubuntu/app_e
npm ERR! node -v v0.10.26
npm ERR! npm -v 1.4.3
npm ERR! path /home/ubuntu/.npm/iconv-lite/0.2.11/package/encodings/table/gbk.js
npm ERR! fstream_path /home/ubuntu/.npm/iconv-lite/0.2.11/package/encodings/table/gbk.js
npm ERR! fstream_type File
npm ERR! fstream_class FileWriter
npm ERR! code ENOENT
npm ERR! …Run Code Online (Sandbox Code Playgroud) 我按照Yeoman的指南设置了一个Angular.js应用程序. 除了主机名从"localhost"到"0.0.0.0"之外,我没有更改任何内容.
当我这样做时grunt serve,没有错误.最终我确实看到了''Allo,'Allo'首页,但是只有在livereload.js?snipver = 1超过30秒的延迟后才能获得GET.正如您在右侧所看到的,服务器不会输出任何异常.

我的整个项目都在github上.
我为livereload grep-ped找到了一些嫌疑人:
/node_modules/grunt-contrib-connect/node_modules/connect-livereload/index.js以下这两个函数包含livereload url.第一个链接到" http://my.ip.addr.ess:9000/livereload.js ",其中有"无法获取".
function getSnippet() {
/*jshint quotmark:false */
var snippet = [
"<!-- livereload script -->",
"<script type=\"text/javascript\">document.write('<script src=\"http://'",
" + (location.host || 'localhost').split(':')[0]",
" + ':" + port + "/livereload.js?snipver=1\" type=\"text/javascript\"><\\/ script>')",
"</script>",
""
].join('\n');
return snippet;
};
function snippetExists(body) {
if (!body) return true;
return (~body.lastIndexOf("/livereload.js?snipver=1"));
}
Run Code Online (Sandbox Code Playgroud)我的Gruntfile.js将livereload设置为true,我想保留.
有人有线索吗?
更新:
我正在学习mean.io从本教程视频,其中显示了示例包(创建人mean package mymodule,也是在对"包"中描述的文档).我想帮助理解给定的身份验证/授权是如何工作的.
默认样本包/模块具有客户端上的简单用户身份验证
myapp/packages/mymodule/public/views/index.html包含:
<li>
<a href="mymodule/example/anyone">Server route that anyone can access</a>
</li>
<li>
<a href="mymodule/example/auth">Server route that requires authentication</a>
</li>
<li>
<a href="mymodule/example/admin">Server route that requires admin user</a>
</li>
Run Code Online (Sandbox Code Playgroud)
在服务器端,
myapp/packages/mymodule/server/routes/mymodule.js,包含:
// The Package is past automatically as first parameter
module.exports = function(Mymodule, app, auth, database) {
app.get('/mymodule/example/anyone', function(req, res, next) {
res.send('Anyone can access this');
});
app.get('/mymodule/example/auth', auth.requiresLogin, function(req, res, next) {
res.send('Only authenticated users can access …Run Code Online (Sandbox Code Playgroud) 在全新的 Ubuntu 机器 12.04.3 上,我在主目录中进行了以下安装:
sudo apt-get install gitsudo apt-get install nodejs并用 sudo npm cache clean -f,更新它sudo npm install -g n,sudo n stablesudo apt-get install npm然后用npm update npm -gsudo npm install -g yo在我的主目录中弹出一个新的“tmp”目录,其结构如下:
npm-13728-uErqEQ4O:
1392566713336-0.9297236264683306 1392566726706-0.4921755278483033
npm-13763-yoMEDYdC:
1392566864990-0.09957328205928206
Run Code Online (Sandbox Code Playgroud)
每个 uErqEQ4O 子目录包含:
tmp.tgz
package:
AUTHORS configure html make.bat node_modules scripts
bin CONTRIBUTING.md lib Makefile package.json test
cli.js doc LICENSE man README.md
Run Code Online (Sandbox Code Playgroud)
yoMEDYdC 子目录包含:
tmp.tgz
package: …Run Code Online (Sandbox Code Playgroud) 我正在阅读这个关于运行的stackoverflow答案,yo而npm不是sudo通过保存他们的结果~/.node.
它使用echo prefix = ~/.node >> ~/.npmrc,我想知道每个符号的含义以及它们在这种情况下如何协同工作.
我想让Yeoman工作,但这是一个接一个的墙.感谢上帝的stackoverflow和所有你帮助的好人.无论如何 ...
我一直想跑yo angular.但我得到了一堆npm ERR!包括:
npm ERR! Please try running this command again as root/Administrator.
Run Code Online (Sandbox Code Playgroud)
由于我不能使用suo,我遵循了大多数人接受的建议,并改变了一些希望解决这个问题的配置.以下是我运行的命令,这些命令基于建议.
但我仍然得到同样的错误!
这是我yo angular的npm-debug.log
这是我yo angular的stderr.log
这是我yo angular的stdout.log
我该如何解决这些错误?
非常感谢你提前.
更新:
在alex的建议之后sudo chown ubuntu /home/ubuntu/tmp -Rv,root运行错误确实消失了,但是yo angular在新目录中运行后我仍然遇到这些错误.我正在显示错误cat -n stderr.log | grep -ir err(这很奇怪,npm-debug.log这次没有生成):
218 npm ERR! Error: ENOENT, lstat '/home/ubuntu/youtube_5/node_modules/grunt/lib/grunt/task.js'
219 npm ERR! If you need help, you …Run Code Online (Sandbox Code Playgroud)