我对Ruby很新。按照TeamTreehouse在OSX(Yosemite)上安装Ruby Development Environment的说明。
当我开始创建测试应用程序的步骤时。它最终失败了。权限被拒绝。 :(不知道我做错了什么,我确实尝试运行宝石安装调试检查器和捆绑exec弹簧binstubb所有,他们都失败。
<html>
<style>
#container {
width: 300px;
height: 300px;
}
#container > .gridCell {
float: left;
padding: 0;
margin: 0;
border: 0;
outline: 1px solid;
}
</style>
<body>
<div id="container">
</div>
<script>
// QueryString is the function that gets the num parameter.
// Source to this function: http://stackoverflow.com/questions/979975/how-to-get-the-value-from-the-url-parameter
var QueryString = function () {
// This function is anonymous, is executed immediately and
// the return value is assigned to QueryString!
var query_string = {};
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0;i<vars.length;i++) {
var pair = vars[i].split("=");
// If first entry with this name
if (typeof query_string[pair[0]] === "undefined") {
query_string[pair[0]] = pair[1];
// If second entry with this name
} else if (typeof query_string[pair[0]] === "string") {
var arr = [ query_string[pair[0]], pair[1] ];
query_string[pair[0]] = arr;
// If third or later entry with this name
} else {
query_string[pair[0]].push(pair[1]);
}
}
return query_string;
} ();
var defaultNum = 3;
var num = parseInt(QueryString.num) || defaultNum;
var container = document.getElementById('container');
var width = container.offsetWidth;
createGrid(num);
function createGrid(n) {
// If n is not a number or smaller than 0
if(isNaN(n) || n <= 0)
return;
for(var i = 0; i < n*n; i++) {
var dimension = width/n;
var cell = document.createElement('div');
cell.className = cell.className + ' gridCell';
cell.style.width = dimension + 'px';
cell.style.height = dimension + 'px';
container.appendChild(cell);
}
}
</script>
</body>
</html>
答案 0 :(得分:30)
尝试sudo chown -R jeremy $HOME/.rbenv
- 看起来您有权限问题。将来,只能自己运行rbenv,例如没有sudo。
答案 1 :(得分:2)
参考这个github问题,https://github.com/bundler/bundler/issues/4590,您可能需要删除〜/ .bundle sudo mv ~/.bundle /tmp
然后尝试再次创建应用程序
答案 2 :(得分:0)
我遇到了类似的问题。我什至无法运行rails new
。在这种情况下,您应该使用$ ~/ chmod -R 0755 tpm
授予在文件夹中创建文件所必需的权限,这对我来说很好。
我在@Abhi对here的评论中找到了此解决方案。我之所以放在这里是因为它具有更大的知名度,因为原始评论的大小可能会引起注意(这发生在我身上),并且在我进行研究时,这个问题对我的影响更大。