строитель электронов не связывает файлы python - PullRequest
0 голосов
/ 05 июля 2018

Это моя структура каталогов, где renderer.js включено в index.html. Сценарии Python visitor.py и download.py вызываются из renderer.js через python-shell . После того, как я собрал пакет, он не может найти скрипты Python

  |_ index.html
  |_ styles.css
  |_ main.js
  |_ package.json
  |_ dist/
  |_ node_modules/
  |_ renderer.js
  |_ visitor.py
  |_ download.py

Я попытался поместить все в files: [...] в package.json в build > files и затем запустил npm run dist. Я также попытался явно скопировать файлы Python в папку dist, а затем запустил npm run dist. Никто не работает.

/ Применение / test.app / Содержание / Ресурсы / app.asar / remderer.js: 226 Ошибка: python: не удается открыть файл 'visitor.py': [Ошибка 2] Нет такого файла или каталог

Это мой пакет. Json

{
  "name": "test",
  "version": "1.0.0",
  "description": "",
  "main": "main.js",
  "scripts": {
    "start": "electron .",
    "pack": "build --dir",
    "dist": "build"
  },
  "author": "",
  "license": "ISC",
  "build": {
    "appId": "com.example.app",
    "files": [
      "dist/",
      "node_modules/",
      "index.html",
      "main.js",
      "package.json",
      "renderer.js",
      "styles.css",
      "visitor.py",
      "download.py"
    ],
    "dmg": {
      "contents": [
        {
          "x": 110,
          "y": 150
        },
        {
          "x": 240,
          "y": 150,
          "type": "link",
          "path": "/Applications"
        }
      ]
    },
    "linux": {
      "target": [
        "AppImage",
        "deb"
      ]
    },
    "win": {
      "target": "squirrel",
      "icon": "build/icon.ico"
    }
  },
  "dependencies": {
    "csv-parse": "^2.5.0",
    "electron-css": "^0.6.0",
    "npm": "^6.1.0",
    "python-shell": "^0.5.0",
  },
  "devDependencies": {
    "electron": "^2.0.3",
    "electron-builder": "^20.19.1"
  }
}

PS: Это строитель электронов, о котором я говорю https://github.com/electron-userland/electron-builder

1 Ответ

0 голосов
/ 06 августа 2018

Вам необходимо указать их следующим образом:

    "extraFiles": [
        "from":"source path",
        "to":"your destination"
    ]

если вы хотите поместить эти файлы, создав каталог, используйте extraResources

    "extraResources": [
        "from":"source path",
        "to":"some directory name"
    ]

для получения дополнительной информации см. здесь

...