React / Electron中的“ SyntaxError:无效的正则表达式标志”

时间:2019-01-04 01:10:11

标签: javascript reactjs electron electron-builder

我有一个使用dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'com.android.support:appcompat-v7:27.1.1' implementation 'com.android.support:design:27.1.1' implementation 'com.android.support:recyclerview-v7:27.1.1' implementation 'com.github.PhilJay:MPAndroidChart:v3.0.2' implementation 'com.google.firebase:firebase-core:16.0.6' implementation 'com.google.firebase:firebase-firestore:17.1.5' implementation 'com.google.firebase:firebase-storage:16.0.5' implementation 'com.firebaseui:firebase-ui-storage:4.1.0' implementation 'com.android.support:multidex:1.0.3' annotationProcessor 'com.github.bumptech.glide:compiler:4.8.0' testImplementation 'junit:junit:4.12' } 在Windows上用于Windows的React / Electron应用程序。它构建良好,但是当我尝试运行打包的程序时,我得到了

DexArchiveMergerException

我正试图弄清这一点。我已经打开electron-builder的包装以查看Uncaught Exception: C:\My Project\dist\win-unpacked\resources\app.asar\build\electron.js:1 (function (exports, require, module, __filename, __dirname, process, global, Buffer) { return function (exports, require, module, __filename, __dirname) { /home/jd/projects/app/src/start.js ^ SyntaxError: Invalid regular expression flags at new Script (vm.js:79:7) at createScript (vm.js:251:10) at Object.runInThisContext (vm.js:303:10) at Module._compile (internal/modules/cjs/loader.js:660:28) at Object.Module._extensions..js (internal/modules/cjs/loader.js:704:10) at Module.load (internal/modules/cjs/loader.js:602:32) at tryModuleLoad (internal/modules/cjs/loader.js:541:12) at Function.Module._load (internal/modules/cjs/loader.js:533:3) at Object.<anonymous> (C:\My Project\dist\win-unpacked\resources\electron.asar\browser\init.js:188:8) at Object.<anonymous> (C:\My Project\dist\win-unpacked\resources\electron.asar\browser\init.js:190:3) ,它有189行(?),第188行是

electron.asar

这似乎是在Electron中发生的,在我编写的应用程序之外被称为?在到达React的主init.js之前,这似乎是一个错误。

感谢任何有关如何调试此功能的想法,请告知我是否可以提供更多有用的信息。

编辑:我应该提到,我在应用中的任何地方都没有使用任何正则表达式。

编辑2 :我已经将package.json上传到this gist

编辑3 :该项目使用Module._load(path.join(packagePath, mainStartupScript), Module, true)

引导

1 个答案:

答案 0 :(得分:1)

根据错误消息,有些文本被解释为正则表达式。

查看您粘贴的错误消息,您可以看到文件C:\My Project\dist\win-unpacked\resources\app.asar\build\electron.js正确启动,并且包含字符串/home/jd/projects/app/src/start.js

我认为/home/jd被解析为带有标志jd的正则表达式,尽管唯一有效的标志是gimuysource)。

我的建议是,您清理构建目录C:\My Project\dist\win-unpacked\resources\app.asar\build\并尝试再次编译,尽管我不知道字符串/home/jd/projects/app/src/start.js是如何出现在构建资产中的。希望对您有帮助!