我创建了我的第一个电子应用程序,我准备发布它。我能够为这两个平台导出它,没有错误:
但是当我为MacOS导出它时,test.app就不能工作了。
我正在使用MacOS HighSierra,我测试了我能想到的所有东西,但无法让我的应用程序在MacOS上工作。
我不确定是否必须在执行之前将其转换为dmg文件,因此我使用本指南测试了将应用程序转换为.dmg的情况:
https://kb.parallels.com/en/123895
但是,当我运行dmg并尝试安装该应用程序时,再次出现相同的错误。我真的什么都试过了,但没有运气。我希望这里有人知道如何为MacOS导出它。
要导出应用程序,我使用了electron-packager,这是我的package.json
{
"name": "test",
"version": "1.0.0",
"description": "",
"main": "app.js",
"scripts": {
"start": "electron .",
"package-mac": "electron-packager . --overwrite --platform=darwin --arch=x64 --icon=assets/icons/mac/icon.icns --prune=true --out=release-builds --app-copyright=\"test",
"package-win": "electron-packager . test --overwrite --asar=true --platform=win32 --arch=ia32 --icon=assets/icons/win/icon.ico --prune=true --out=release-builds --version-string.CompanyName=CE --version-string.FileDescription=CE --version-string.ProductName=\"test\" --app-copyright=\"test\"",
"package-linux": "electron-packager . test --overwrite --asar=true --platform=linux --arch=x64 --icon=assets/icons/png/icon.png --prune=true --out=release-builds --app-copyright=\"test"
},
"dependencies": {},
"devDependencies": {
"electron": "1.8.4",
"electron-packager": "^9.0.1"
}
}这是我尝试在Mac上运行test.app文件时的错误日志,这是我从电子导出的文件:
Process: test [657]
Path: /Volumes/*/test.app/Contents/MacOS/test
Identifier: com.electron.test
Version: 1.1.1 (1.1.1)
Code Type: X86-64 (Native)
Parent Process: ??? [1]
Responsible: test [657]
User ID: 501
Date/Time: 2018-04-11 13:23:39.858 -0700
OS Version: Mac OS X 10.13 (17A291j)
Report Version: 12
Anonymous UUID: 0CF5BE48-84D7-4216-9DC6-58685E649DDD
Time Awake Since Boot: 550 seconds
System Integrity Protection: enabled
Crashed Thread: 0
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Termination Reason: DYLD, [0x1] Library missing
Application Specific Information:
dyld: launch, loading dependent libraries
Dyld Error Message:
Library not loaded: @rpath/Electron Framework.framework/Electron Framework
Referenced from: /Volumes/*/test.app/Contents/MacOS/test
Reason: no suitable image found. Did find:
/Volumes/VMware Shared Folders/dev/test.app/Contents/MacOS/../Frameworks/Electron Framework.framework/ Electron Framework: file too short
/Volumes/VMware Shared Folders/dev/app/release/test-darwin-x64/test.app/Contents/MacOS/../Frameworks/ Electron Framework.framework/Electron Framework: stat() failed with errno=1
Binary Images:
0x103f99000 - 0x103f99ff7 +com.electron.test (1.1.1 - 1.1.1) < C11B8E11-EDD2-37B9-9AB5-5FE9E97FFFFB> /Volumes/*/test.app/Contents/MacOS/test
0x10d97a000 - 0x10d9c237f dyld (513.2) <CEB3F2DA-93CF-3991-AD98-582FAF7023AB> /usr/lib/dyld发布于 2018-04-12 10:40:03
如果源代码在mac机器上与npm start一起正常运行,那么这是一个npm start问题。我建议您尝试使用electron-builder.进行构建。
注意:您需要一台mac机器来生成.dmg。
参见祖利普/电子的配置
发布于 2020-01-21 12:05:10
当我在Mac上发布一个应用程序时,我反复地面临着崩溃的问题。
崩溃的原因原来是一些电子框架文件夹的权限问题。这些文件夹具有744权限,root作为所有者,因此登录用户无法执行框架文件。将文件夹的权限更改为755,为我解决了问题。
https://stackoverflow.com/questions/49784259
复制相似问题