繁体   English   中英

尝试在 mac os 上创建文件时出现文件权限错误

[英]File permission error when try to create files on mac os

我使用 Mac OS Monterey v12.0.1 在 Apple pc 上创建了一个测试应用程序,以测试创建的文件和文件夹。

但是,当文件创建脚本在清单文件中使用"node-main": "./index.js"引用运行时,它无法创建文件并给出以下权限错误。

Error: Uncaught Error: EROFS: read-only file system, open './newfile.txt'

后续步骤:

创建了以下文件:

index.html
index.js
package.json

在以下位置: nwjs-sdk-v0.49.1-osx-x64/nwjs.app/Contents/Resources/app.nw

index.js 文件内容如下:

var fs = require('fs');
const file_name = './new-file.txt';
fs.writeFile(file_name, 'Learn NWJS', function (err) {
  if (err) throw err;
  console.log('File is created successfully.');
});

package.json文件内容如下:

{
  "name": "test-app",
  "node-main": "./index.js",
  "main": "./index.html"
}

谁能帮我解决这个问题,好吗?

环境信息:

  1. 操作系统:Mac OS Monterey v12.0.1
  2. 本地安装节点:v14.18.1
  3. NWJS:v0.49.1-sdk(下载 zip 文件并解压)

注意:我已授予 NWJS 应用程序本身以及 app.nw 文件夹 777 的权限,以便查看结果,但结果为零。

谢谢你。

我不确定您遇到的问题(假设环境相关)。 但是您可以采取的另一种我从未遇到过问题的方法是npm install NW.js。

{
  "main": "index.html",
  "node-main": "index.js",
  "name": "example",
  "scripts": {
    "start": "nw ."
  },
  "devDependencies": {
    "nw": "0.49.1-sdk"
  }
}

如果您已经安装了 Node,我建议您将其卸载并使用nvm (Node 版本管理器)来让您轻松地在 Node 版本之间切换。 NW.js 内置了 Node,因此通常最好在全局安装相同版本的 Node。 因此,能够轻松切换版本很有用。

NW.js 0.49.1随 Node 14.13.1一起提供,所以这是您要全局安装的版本。

  1. 将你的package.json更新到上面的那个,把它放在一个空文件夹中,在你的桌面上只有index.htmlindex.js文件。
  2. 安装nvm
  3. 运行nvm install 14.13.1
  4. 使用node -v检查您的 Node 版本是否匹配
  5. 检查您是否有 npm 和npm -v (应该带有节点)
  6. 运行npm install && npm start从您的package.json

这将为您将 NW.js 下载到node_modules文件夹并运行它。 任何时候你想再次运行它,你只需要npm start

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM