我已经在我的linux机器上安装了Cloud9 IDE,以便稍微使用它(我必须使用nodejs 0.8,因为cloud9使用的是一个依赖于node-waf的软件包,不再受更高版本的支持的NodeJS)。
我可以毫无问题地启动它,但是当我尝试通过浏览器访问Cloud9时,它会不断地给我错误消息:File already exists.
。这是日志中的痕迹:
Error: File already exists.
at module.exports.from (/home/xyz/repos/cloud9/node_modules/vfs-local/localfs.js:678:35)
at Object.fs.exists [as oncomplete] (fs.js:91:19)
相关代码部分:
exists(topath, function(exists){
if (options.overwrite || !exists) {
// Rename the file
fs.rename(frompath, topath, function (err) {
if (err) return callback(err);
// Rename metadata
if (options.metadata !== false) {
rename(WSMETAPATH + from, {
to: WSMETAPATH + to,
metadata: false
}, function(err){
callback(null, meta);
});
}
});
}
else {
var err = new Error("File already exists.");
err.code = "EEXIST";
callback(err);
}
发生错误时,topath
变量设置为工作区设置文件(/home/xyz/repos/cloud9/workspace/.settings
)
还有其他人有这样的错误吗?我该如何解决?
事先提前答案 0 :(得分:1)
第一个选项,也许您可以尝试使用此变通方法安装过程: https://github.com/ajaxorg/cloud9/issues/2904#issuecomment-22518669
第二个选项,如果您愿意总是使用较旧的节点版本来运行cloud9,那么我使用了以下安装过程并且它有效(假设您已经安装了nvm)。然后你仍然可以使用 cloud9.sh -file开始:
git clone git://github.com/ajaxorg/cloud9.git
cd cloud9
nvm install 0.8.8
sed -i -e 's/~//g' package.json
npm config set ca=""
npm install
sed -i s/connect.session.file/connect.session.memory/ configs/default.js
不确定0.8.8是否是cloud9的最佳节点版本,但它对我有用:) 由于https://github.com/ajaxorg/cloud9/issues/2005#issuecomment-11372587:)
,最后一步似乎是必要的然后在启动cloud9之前,您必须输入:
nvm use 0.8.8
如果您不使用节点,则将0.8.8设置为默认节点版本:
nvm alias default 0.8.8
第三个选项,如果您不想重复安装过程,可以尝试重新安装cloud9目录中的 vfs-local -module:
npm install vfs-local@0.3.4
虽然没有测试过这个:)