【问题标题】:Executing a script inside an ASAR archive在 ASAR 存档中执行脚本
【发布时间】:2016-12-11 10:26:51
【问题描述】:

我正在尝试运行一个存档在 ASAR 文件中的脚本,如下所示:

var spawn  = require('child_process').spawn;

var t = spawn('node', ['./bundle.asar/main.js'], {});

t.on('data', function(data){      
  console.log(data.toString());
});

t.stdout.pipe(process.stdout);
t.stderr.pipe(process.stderr);

仅供参考,上述脚本位于 ASAR 存档之外。 但是,我得到的只是以下错误:

Cannot find module 'C:\Users\MyUser\tests\asar-test\bundle.asar\main.js'

关于这个特定问题的官方文档不存在。 有什么方法可以读取 ASAR 文件或需要其中的脚本吗? 谢谢。

【问题讨论】:

    标签: node.js asar


    【解决方案1】:

    对于后代,这个问题的答案是 require 你的 .js 文件,如下所示:

    var spawn  = require('child_process').spawn;
    var myScript = require('./bundle.asar/main.js');
    
    var t = spawn('node', [myScript], {});
    
    t.on('data', function(data){      
      console.log(data.toString());
    });
    
    t.stdout.pipe(process.stdout);
    t.stderr.pipe(process.stderr);
    

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-04-22
      • 1970-01-01
      • 2017-12-10
      • 2016-07-13
      • 2021-06-20
      • 2013-07-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多