我正在尝试建立我的测试项目
{
"name": "////////",
"version": "1.0.21",
"description": "///////",
"main": "index.js",
"scripts": {
"start": "./node_modules/.bin/electron .",
"build": "build --win",
"test": "echo \"Error: no test specified\" && exit 1",
"rebuild": "electron-rebuild -f -w bcrypt"
},
"build": {
"squirrelWindows": {
"remoteReleases": ""
},
"win": {}
},
"devDependencies": {
"devtron": "^1.4.0",
"electron": "^2.0.2",
"electron-builder": "^20.26.1",
"electron-packager": "^12.1.0",
"electron-prebuilt": "^1.4.13",
"electron-rebuild": "^1.8.1",
"electron-reload": "^1.2.2",
"electron-squirrel-startup": "^1.0.0",
"electron-updater": "^2.23.3",
"electron-window-state": "^4.1.1",
"electron-winstaller": "^2.6.4"
},
"dependencies": {
"async": "^2.6.1",
"bcryptjs": "^2.4.3",
"child_process": "^1.0.2",
"devtron": "^1.4.0",
"express": "^4.16.3",
"mysql2": "^1.5.3",
"tedious": "^2.6.1",
"update-electron-app": "^1.3.0"
}
}
在一段时间内,此方法工作正常,我得到了我的exe.file,blockmap文件和Latest.yml,但是当我安装生成的应用程序时,出现以下错误:
我知道此问题是由以下事实造成的:它认为未安装该应用程序,但是我在做什么错呢?到目前为止,我没有任何错误 此错误的代码如下:
<script>
//const package = require('./package.json')
const remote = require("electron").remote
const autoUpdater = remote.autoUpdater
autoUpdater.on('update-availabe', () => {
console.log('update available')
})
autoUpdater.on('checking-for-update', () => {
console.log('checking-for-update')
})
autoUpdater.on('update-not-available', () => {
console.log('update-not-available')
})
autoUpdater.on('update-downloaded', (e) => {
console.log(e)
alert("Install?")
autoUpdater.quitAndInstall()
})
autoUpdater.setFeedURL('https://x.x.x.x.x/x/')
autoUpdater.checkForUpdates()
window.autoUpdater = autoUpdater
</script>
答案 0 :(得分:0)
不能100%确定,但是如果您的"name"
文件的字段package.json
确实是"////////"
,则可能无效。例如,根据package.json | npm Documentation:
该名称最终成为URL的一部分,是命令行上的一个参数, 和文件夹名称。因此,该名称不能包含任何非URL安全的 字符。
答案 1 :(得分:0)
最后,但这是因为您将松鼠声明为开发人员依赖项,因此不会将其包含在生产版本中。对于任何有类似问题的人,如果它说它缺少一个模块,只需将其作为依赖项即可。