-
I am creating an application that uses selenium-webdriver and chromedriver, when I use npm start my application works perfectly, but when I use npm run build:win, it does not find chromedriver what am I doing wrong? const log = require('electron-log')
const { parentPort, workerData } = require('worker_threads')
const { Builder, By, until } = require('selenium-webdriver')
const chrome = require('selenium-webdriver/chrome')
const chromedriver = require('chromedriver')
log.info(chromedriver.path)
// [info] D:\Github\electron-vite-vanilla\my-app\dist\win-unpacked\resources\app.asar\node_modules\chromedriver\lib\chromedriver\chromedriver.exe package.json {
"name": "my-app",
"version": "1.0.0",
"description": "A minimal Electron application with JavaScript",
"main": "./out/main/index.js",
"author": "example.com",
"homepage": "https://electron-vite.org",
"scripts": {
"format": "prettier --write .",
"lint": "eslint . --ext .js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix",
"start": "electron-vite preview",
"dev": "electron-vite dev",
"build": "electron-vite build",
"postinstall": "electron-builder install-app-deps",
"build:unpack": "npm run build && electron-builder --dir",
"build:win": "npm run build && electron-builder --win",
"build:mac": "npm run build && electron-builder --mac",
"build:linux": "npm run build && electron-builder --linux"
},
"dependencies": {
"@electron-toolkit/preload": "^3.0.0",
"@electron-toolkit/utils": "^3.0.0",
"axios": "^1.6.8",
"chromedriver": "^125.0.3",
"electron-log": "^5.1.5",
"electron-updater": "^6.1.7",
"node-machine-id": "^1.1.12",
"proxy-chain": "^2.4.0",
"selenium-webdriver": "^4.21.0"
},
"devDependencies": {
"@electron-toolkit/eslint-config": "^1.0.2",
"@electron-toolkit/eslint-config-prettier": "^2.0.0",
"cross-env": "^7.0.3",
"electron": "^28.2.0",
"electron-builder": "^24.9.1",
"electron-vite": "^2.0.0",
"eslint": "^8.56.0",
"prettier": "^3.2.4",
"vite": "^5.0.12"
}
} electron-builder.yml appId: com.electron.app
productName: my-app
directories:
buildResources: build
files:
- '!**/.vscode/*'
- '!src/*'
- '!electron.vite.config.{js,ts,mjs,cjs}'
- '!{.eslintignore,.eslintrc.cjs,.prettierignore,.prettierrc.yaml,dev-app-update.yml,CHANGELOG.md,README.md}'
- '!{.env,.env.*,.npmrc,pnpm-lock.yaml}'
asarUnpack:
- resources/**
win:
executableName: my-app
nsis:
artifactName: ${name}-${version}-setup.${ext}
shortcutName: ${productName}
uninstallDisplayName: ${productName}
createDesktopShortcut: always
mac:
entitlementsInherit: build/entitlements.mac.plist
extendInfo:
- NSCameraUsageDescription: Application requests access to the device's camera.
- NSMicrophoneUsageDescription: Application requests access to the device's microphone.
- NSDocumentsFolderUsageDescription: Application requests access to the user's Documents folder.
- NSDownloadsFolderUsageDescription: Application requests access to the user's Downloads folder.
notarize: false
dmg:
artifactName: ${name}-${version}.${ext}
linux:
target:
- AppImage
- snap
- deb
maintainer: electronjs.org
category: Utility
appImage:
artifactName: ${name}-${version}.${ext}
npmRebuild: false
publish:
provider: generic
url: https://example.com/auto-updates electron.vite.config.mjs import { defineConfig, bytecodePlugin } from 'electron-vite'
export default defineConfig({
main: {
plugins: [bytecodePlugin()]
},
preload: {
plugins: [bytecodePlugin()]
},
renderer: {
plugins: [bytecodePlugin()],
build: {
rollupOptions: {
output: {
format: 'cjs'
}
}
}
}
}) |
Beta Was this translation helpful? Give feedback.
Answered by
alex8088
Jun 7, 2024
Replies: 1 comment
-
chromedriver should not be packed into asar. https://electron-vite.org/guide/distribution#limitations-of-asar-archives |
Beta Was this translation helpful? Give feedback.
0 replies
Answer selected by
Gaimo
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
chromedriver should not be packed into asar. https://electron-vite.org/guide/distribution#limitations-of-asar-archives