Electron Forge: Ошибка: ENOENT: нет такого файла или каталога

Я сейчас пытаюсь создать свое электронное приложение. Для этого я использую Electron Forge. Все работает нормально, когда я запускаю npm start, но когда я пытаюсь создать его с помощью npm run make, я получаю следующие строки ошибки:

An unhandled rejection has occurred inside Forge:
[Error: ENOENT: no such file or directory, rename 'C:\Users\RENERE~1\AppData\Local\Temp\electron-packager\win32-x64\yt-downloader-win32-x64\electron.exe' -> 'C:\Users\RENERE~1\AppData\Local\Temp\electron-packager\win32-x64\yt-downloader-win32-x64\yt-downloader.exe'] {
  errno: -4058,
  code: 'ENOENT',
  syscall: 'rename',
  path: 'C:\\Users\\RENERE~1\\AppData\\Local\\Temp\\electron-packager\\win32-x64\\yt-downloader-win32-x64\\electron.exe',
  dest: 'C:\\Users\\RENERE~1\\AppData\\Local\\Temp\\electron-packager\\win32-x64\\yt-downloader-win32-x64\\yt-downloader.exe'
}

Вот файл package.json:

{
  "name": "yt-downloader",
  "productName": "yt-downloader",
  "version": "1.0.0",
  "description": "Download from Youtube",
  "main": "index.js",
  "scripts": {
    "start": "electron-forge start",
    "package": "electron-forge package",
    "make": "electron-forge make",
    "publish": "electron-forge publish",
    "lint": "echo \"No linting configured\""
  },
  "keywords": [],
  "author": {
    "name": "Remling97",
    "email": "[email protected]"
  },
  "license": "MIT",
  "config": {
    "forge": {
      "packagerConfig": {},
      "makers": [
        {
          "name": "@electron-forge/maker-squirrel",
          "config": {
            "name": "yt_downloader"
          }
        },
        {
          "name": "@electron-forge/maker-zip",
          "platforms": [
            "darwin"
          ]
        },
        {
          "name": "@electron-forge/maker-deb",
          "config": {}
        },
        {
          "name": "@electron-forge/maker-rpm",
          "config": {}
        }
      ]
    }
  },
  "dependencies": {
    "electron-squirrel-startup": "^1.0.0",
    "ytdl-core": "^2.0.0",
    "ytpl": "^0.1.20"
  },
  "devDependencies": {
    "@electron-forge/cli": "6.0.0-beta.50",
    "@electron-forge/maker-deb": "6.0.0-beta.50",
    "@electron-forge/maker-rpm": "6.0.0-beta.50",
    "@electron-forge/maker-squirrel": "6.0.0-beta.50",
    "@electron-forge/maker-zip": "6.0.0-beta.50",
    "electron": "8.1.0"
  }
}

Я не мог найти в Интернете ответа, почему это происходит. Может кто-нибудь мне помочь? Я уже пробовал переустановить электрон, электрон-кузницу и nodejs, ничего не работало.


person Remling    schedule 08.03.2020    source источник


Ответы (3)


Если у кого-то еще есть эта ошибка и он не может найти решение:

  • ошибка возникает, когда в вашем имени пользователя Windows есть пробел
person Remling    schedule 05.04.2020
comment
Нет, у меня нет, и это происходит со мной - person Leonardo Rick; 11.03.2021

Об ошибке было сообщено на электронный упаковщик на Github и было отправлено зависимости, которая, вероятно, вызывает ошибку. Хотя проблема была закрыта и предположительно исправлена, я все еще сталкиваюсь с проблемой и не думаю, что переименование пользователя Windows является удовлетворительным решением.

Одно из возможных решений - закрепить @electron-forge/maker-zip в версии 6.0.0-beta.47 согласно одному пользователь, но у меня это не сработало.

person Rémi Desmartin    schedule 06.05.2020

Я нашел решение, добавил "electron-prebuilt-compile": "4.0.0" в качестве зависимости разработчика, и это сработало. (это не может быть ^ 4.0.0 или подобный диапазон, это должна быть одна точная версия, например 4.0.0, или электронная кузница выдаст следующую ошибку)

Electron forge was terminated:
You must depend on an EXACT version of "electron-prebuilt-compile" not a range (got "^4.0.0")
person Lazzy    schedule 10.03.2020
comment
эй, спасибо за ответ, но я все равно получаю ту же ошибку: / - person Remling; 11.03.2020
comment
Обнаружил ошибку ..., ошибка возникает, когда в вашем имени пользователя Windows есть пробел. - person Remling; 12.03.2020