node.js - Mac OS Catalina 上的 Electron Forge Squirrel Windows?
问题描述
再次询问,因为我没有运气找到这些信息。有谁知道我在哪里可以找到在运行 OS Catalina(10.15) 的 Mac 上打包适用于 Windows 的 Electron 应用程序的文档或步骤?我已经成功发布了 DMG 和 Mac OS 的 .zip。目前使用电子锻造。
我阅读了要使用的 Electron 文档,wine
或者mono
我都安装了两者,但我不确定在那之后该怎么做。我在安装两者后尝试运行电子打包程序,但它仍然忽略了 Windows 的 squirrel-maker。尝试运行 electron-make 和 publish,都忽略了 squirrel-maker。
一旦我需要使用“电子编译”时出现错误,但是当我安装它并尝试使用它时,当它遇到数组或对象的点运算符时,它一直在我的源代码上抛出错误?前任:
let object = {Name:"Something"}
let object2 = {Age:20}
let newObject = {
...object,
...object2
}
尝试使用“电子编译”框架时会抛出错误。
真的试图避免在我的 Mac 上的 Windows 和 Mac 之间来回切换,并且必须在两个平台上安装电子。package.json 文件:
"name": "MyApp",
"productName": "My Fantastic App",
"version": "1.1.4",
"description": "The worlds most boring app.",
"main": "src/index.js",
"scripts": {
"start": "electron-forge start",
"package": "electron-forge package",
"make": "electron-forge make",
"publish": "electron-forge publish",
"lint": "echo \"No linting configured\"",
"dist": "build",
"build": "electron-builder build --dir"
},
"keywords": [],
"author": "sychordCoder",
"license": "MIT",
"config": {
"forge": "./custom-not.js"
},
"dependencies": {
"dotenv": "^9.0.2",
"electron-dl": "^3.2.1",
"electron-is-dev": "^2.0.0",
"electron-log": "^4.3.5",
"electron-squirrel-startup": "^1.0.0",
"electron-updater": "^4.3.9",
"firebase": "^8.6.2",
"jquery": "^3.6.0",
"pug": "^3.0.2"
},
"devDependencies": {
"@electron-forge/cli": "^6.0.0-beta.54",
"@electron-forge/maker-deb": "^6.0.0-beta.54",
"@electron-forge/maker-dmg": "^6.0.0-beta.54",
"@electron-forge/maker-rpm": "^6.0.0-beta.54",
"@electron-forge/maker-squirrel": "^6.0.0-beta.54",
"@electron-forge/maker-zip": "^6.0.0-beta.54",
"@electron-forge/publisher-github": "^6.0.0-beta.54",
"electron": "^12.0.0",
"uglify-js": "^3.13.7"
}
}
这是我的配置 js 文件:
module.exports = {
packagerConfig: {
name: 'MyApp',
executableName: 'MyApp',
asar: true,
icon: 'src/images/icon128@2x',
ignore: ["file1source.js","file2source.js"],
appBundleId: 'MyAppId',
osxSign: {
identity: 'Developer ID Application: John Smith(90210)',
hardenedRuntime: true,
'gatekeeper-assess': false,
entitlements: 'static/entitlements.plist',
'entitlements-inherit': 'static/entitlements.plist',
'signature-flags': 'library'
},
osxNotarize: {
appleId: process.env.APPLE_ID,
appleIdPassword: process.env.APPLE_PASSWORD
}
},
makers: [
{
name: '@electron-forge/maker-squirrel',
platforms: [
"win32"
],
config: {
name: 'MyApp',
description: 'The worlds most boring app.',
version: '1.1.4'
}
},
{
name: '@electron-forge/maker-zip',
platforms: [
'darwin'
]
},
{
name: '@electron-forge/maker-deb',
config: {}
},
{
name: '@electron-forge/maker-rpm',
config: {}
},
{
name: '@electron-forge/maker-dmg',
config: {
overwrite:true,
icon: 'src/images/icon128@2x.icns'
}
}
],
publishers: [
{
name: '@electron-forge/publisher-github',
config: {
repository: {
owner: 'githubOwner',
name: 'gitHubReleases'
},
prerelease: false,
releaseType: "release",
authToken: process.env.GH_TOKEN
}
}
]
}
任何帮助是极大的赞赏。谢谢,
解决方案
你应该打开 wine 终端来运行 build electron 的命令。
推荐阅读
- javascript - 我有一个带有这个参数的 onChange 函数可以正常工作,但我也想应用函数 onLoad
- java - 将数组从 strings.xml 添加到另一个 ArrayList
- python - Python:如何反转列表中的所有其他字符串?
- bash - 使用 sed 修改 bash 变量
- python - 如何检测一次按键并使用'!='符号?
- javascript - 如何找到专注的 React 组件?(如 document.activeElement)
- xamarin - 使用 ListView,我可以创建表格来输入成绩并显示计算结果吗?
- vb.net - 如何在我的 vb.net 编码中正确显示年份?
- python - 如何使用另一列的滚动平均值创建新列 - Python
- javascript - 使用 Axios 时出错,但 Postman 中的响应正确