51 lines
2.3 KiB
Markdown
51 lines
2.3 KiB
Markdown
# Frequently Asked Questions
|
||
|
||
## Why does the menubar appear when running in development mode, but disappear when packaged?
|
||
|
||
**Note**: as of Electron 5, the menubar always appears, so this question is not relevant to
|
||
officially supported versions of Electron.
|
||
|
||
Based on [a comment from **@MarshallOfSound**](https://github.com/electron/electron-packager/issues/553#issuecomment-270805213):
|
||
|
||
When you're running in "development mode" (for example, `electron /path/to/app`), Electron uses the
|
||
`default_app` codepath to run your app, which also provides a default menubar. When the app is
|
||
packaged, Electron runs your app directly. To have a menubar that's consistent between development
|
||
and packaged modes, you'll need to [define it yourself](https://electronjs.org/docs/api/menu/).
|
||
|
||
## Why isn't my `ignore` option working?
|
||
|
||
As stated in the documentation for [`ignore`](https://electron.github.io/electron-packager/main/interfaces/electronpackager.options.html#ignore), it uses "[one] or more additional
|
||
[regular expression](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions)
|
||
patterns. […] Please note that [glob patterns](https://en.wikipedia.org/wiki/Glob_%28programming%29)
|
||
will not work."
|
||
|
||
## Why isn't the relative path in my app code working?
|
||
|
||
To make a path work in both development and packaged mode, you'll need to generate a path based on
|
||
the location of the JavaScript file that is referencing the file. For example, if you had an app
|
||
structure like the following:
|
||
|
||
```
|
||
AppName
|
||
├── package.json
|
||
├── data
|
||
│ └── somedata.json
|
||
└── src
|
||
└── main.js
|
||
```
|
||
|
||
In `src/main.js`, you would access `data/somedata.json` similar to this:
|
||
|
||
```javascript
|
||
const path = require('path');
|
||
const jsonFilename = path.resolve(__dirname, '..', 'data', 'somedata.json');
|
||
console.log(require(jsonFilename));
|
||
```
|
||
|
||
## How do I set an icon on Linux?
|
||
|
||
The docs for [`icon`](https://electron.github.io/electron-packager/main/interfaces/electronpackager.options.html#icon)
|
||
already show how to set an icon on your `BrowserWindow`, but your dock/taskbar may not use that and
|
||
instead use the `Icon` value in your `.desktop` file. The [Linux distributable creators](https://github.com/electron/electron-packager#distributable-creators)
|
||
can help you set/distribute the appropriate icon in that case.
|