【问题标题】:Node.js nwjs package compilation error: Invalid file descriptor to ICU dataNode.js nwjs 包编译错误:ICU 数据的文件描述符无效
【发布时间】:2016-09-21 19:41:25
【问题描述】:

我正在尝试使用 nwjs 创建我的第一个包,因此我创建了一个简单的应用程序,其中仅使用 npm 在本地安装了 nwjs 模块。我的应用程序主文件只有一个console.log("Hello World!")。我压缩了应用程序文件 - 将它们保存在根目录中 - 并重命名为 app.nw。我基本上关注this doc。包树如下:

app.nw 
 - node_modules
   - nw (and all its files inside)
 - package.json
 - app.js

而我的package.json 是:

{
  "name": "app3",
  "version": "1.0.0",
  "description": "",
  "main": "app.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "window": {
  // Some properties here
  }
}

然后我创建了一个空文件夹并将app.nw 复制到其中。我从模块文件夹/nw/nwjs 复制了文件:nw.exenw.dllnw_elf.dllffmpeg.dll,并将app.nw 拖到nw.exe 上。 debug.log 文件显示以下错误:

[0524/110408:ERROR:icu_util.cc(157)] 收到的 ICU 数据的文件描述符无效。 [0524/110408:FATAL:icu_util.cc(260)] 检查失败:结果。

我在网络上找不到与此错误和此工具相关的任何内容。我在 Win7 x64 中运行它。我也尝试从 github 手动下载 nwjs 并尝试使用 x64 和 x86 二进制文件,但它们都给了我同样的错误。

下面,如果需要的话,回溯:

v8::OutputStream::WriteHeapStatsChunk [0x000007FEDA1B7AB1+225089]
std::vector<v8::CpuProfileDeoptFrame,std::allocator<v8::CpuProfileDeoptFrame> >::operator= [0x000007FEDA1640BC+259612]
v8::OutputStream::WriteHeapStatsChunk [0x000007FEDA1F2E58+467688]
v8::Extension::auto_enable [0x000007FEDA1203D1+368897]
v8::Extension::auto_enable [0x000007FEDA11ED19+363081]
ChromeMain [0x000007FED9CE0EB5+133]
GetUploadedReportsImpl [0x000000013F201251+3297]
GetUploadedReportsImpl [0x000000013F20097F+1039]
IsSandboxedProcess [0x000000013F264628+231640]
BaseThreadInitThunk [0x0000000076C359BD+13]
RtlUserThreadStart [0x0000000076E6A2E1+33]

我在这里错过了什么?

【问题讨论】:

  • 你的主文件不需要是nwjs中的html文件吗?
  • @GrandmasterB 实际上在他们的示例中是一个 html 文件。是要求吗?我会试试的。
  • @GrandmasterB 我试过了,错误仍然存​​在,但现在显示了两次。两个Invalid file descriptor to ICU data received 错误。可能是相同数量的应用程序文件。
  • 二进制目录中是否有一个名为icudtl.dat 的文件(带有nw.exe 的那个)?
  • 太棒了!很高兴听到你成功了!

标签: javascript node.js json package.json node-webkit


【解决方案1】:

我让它与以下package.json 一起工作:

{
  "name": "app4",
  "version": "1.0.0",
  "description": "",
  "main": "index.html",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "single-instance": true,
  "package": ".json",
  "window": {
    "title": "app4",
    "toolbar": false
  }
}

我实际上并不确定我删除/添加了哪些特定属性使其工作。然后我将它压缩到package.nw,并放在与nw.exe相同的文件夹中运行它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-06-11
    • 1970-01-01
    • 1970-01-01
    • 2011-09-08
    • 2016-08-12
    • 1970-01-01
    相关资源
    最近更新 更多