サポートしているコマンドラインスイッチ
Electronによってサポートされているコマンドラインスイッチ。
app モジュールで ready イベントが発生する前に、アプリのメインスクリプトで app.commandLine.appendSwitch を使って、コマンドラインスイッチを追加することができます。
const { app } = require('electron')
app.commandLine.appendSwitch('remote-debugging-port', '8315')
app.commandLine.appendSwitch('host-rules', 'MAP * 127.0.0.1')
app.whenReady().then(() => {
// コードをここに
})
Electron CLI フラグ
--auth-server-whitelist=url
統合認証が有効であるサーバーのコンマ区切りのリスト。
以下がその例です。
--auth-server-whitelist='*example.com, *foobar.com, *baz'
末尾が example.com
、foobar.com
、baz
である url
は、統合認証の対象になります。 *
のプリフィックスがない場合は、URL は厳密に一致する必要があります。
--auth-negotiate-delegate-whitelist=url
ユーザー資格情報の委任が必要なサーバのコンマ区切りリスト。 *
のプリフィックスがない場合は、URL は厳密に一致する必要があります。
--disable-ntlm-v2
POSIX プラットフォーム向けに NTLM v2 を無効化します。他プラットフォームでの効果はありません。
--disable-http-cache
HTTPリクエストに対するディスクキャッシュを無効にします。
--disable-http2
HTTP/2 および SPDY/3.1 プロトコルを無効にします。
--disable-renderer-backgrounding
Chromiumが隠れたページのレンダラープロセスの優先順位を下げるのを防止します。
このフラグはすべてのレンダラープロセスに影響を及ぼすので、1つのウインドウの制限を無効にしたいだけの場合、無音のオーディオを再生するというテクニックを使うことができます。
--disk-cache-size=size
ディスクキャッシュによって使用されるバイト単位での最大のディスク容量を強制的に設定します。
--enable-logging[=file]
標準エラー出力 (またはログファイル) に Chromium のログを出力します。
ELECTRON_ENABLE_LOGGING
環境変数への設定は --enable-logging
を渡すのと同じ効果です。
--enable-logging
を渡すと、標準エラー出力にログを出力すます。 --enable-logging=file
を渡すと、ログは --log-file=...
で指定したファイルに、--log-file
が未指定の場合はユーザデータディレクトリの electron_debug.log
に保存されます。
注意: Windows では、子プロセスからのログを標準エラー出力に送信できません。 Windows でのログ収集は、ファイルへのログ出力が最も信頼できる方法です。
--log-file
, --log-level
, --v
, --vmodule
もご参照ください。
--force-fieldtrials=trials
フィールド トライアルを強制的に有効または無効にします。
例: WebRTC-Audio-Red-For-Opus/Enabled/
--host-rules=rules
ホスト名をどのようにマッピングするかを制御する rules
のコンマ区切りのリスト。
以下がその例です。
MAP * 127.0.0.1
は、すべてのホスト名を強制的に127.0.0.1にマッピングします。MAP *.google.com proxy
は、すべてのgoogle.comのサブドメインを強制的に "proxy" で解決されるようにします。MAP test.com [::1]:77
は "test.com" を強制的に IPv6 ループバックへ解決されるようにします。 また、ソケットアドレスのポートを 77 に強制します。MAP * baz, EXCLUDE www.google.com
は、"www.google.com" 以外のすべてを "baz" に再マッピングします。
これらのマッピングは、ネットワークリクエストのエンドポイントのホスト (直接接続でのTCP接続とホストリゾルバー、HTTPプロキシ接続での CONNECT
、SOCKS
プロキシ接続でのエンドポイントホスト) に対して適用されます。
--host-resolver-rules=rules
--host-rules
と似ていますが、これらの rules
は、ホストリゾルバーにしか適用されません。
--ignore-certificate-errors
証明書関連のエラーを無視します。
--ignore-connections-limit=domains
,
で区切られた domains
リストに対する接続数の制限を無視します。
--js-flags=flags
V8 エンジン へ渡されるフラグを指定します。 メインプロセスで flags
を有効にするには、起動時にこのスイッチを渡さなければなりません。
$ electron --js-flags="--harmony_proxies --harmony_collections" your-app
node --v8-options
または electron --js-flags="--help"
をターミナルで実行すると、利用可能なフラグの一覧が表示されます。 これらは、早期段階の JavaScript 機能の有効化や、ガベージコレクションのログと操作に利用できます。
例えば、V8 の最適化と最適化解除をトレースするには以下のようにします。
$ electron --js-flags="--trace-opt --trace-deopt" your-app
--lang
カスタムロケールを設定します。
--log-file=path
--enable-logging
が指定された場合、ログを指定のパスに書き込みます。 その親ディレクトリは存在していなければなりません。
環境変数 ELECTRON_LOG_FILE
への設定は、このフラグを渡すことと等価です。 両方とも存在する場合はコマンドラインスイッチを優先します。
--log-net-log=path
保存されるネットワークログイベントを有効にし、path
にそれらを書き込みます。
--log-level=N
--enable-logging
と一緒に使用することで、ログの詳細度を設定します。 N
は ChromeのLogSeverities のいずれかでなければなりません。
注意として、Chromium の 2 つの相補的なログメカニズムである LOG()
と VLOG()
は、それぞれ別のスイッチで制御しています。 --log-level
は LOG()
のメッセージを制御しますが、--v
と --vmodule
は VLOG()
のメッセージを制御します。 そのため、必要な詳細度やウォッチしようとしているコードで行われているロギング呼び出しに応じて、これら 3 つのスイッチを組み合わせて使用するとよいでしょう。
LOG()
と VLOG()
の相互作用の詳細については、Chromium ロギングのソース をご参照ください。 大まかに言えば、VLOG()
は大量の LOG(INFO)
データを制御する LOG(INFO)
内部のサブレベル / モジュールごとのレベルと考えられます。
--enable-logging
, --log-level
, --v
, --vmodule
もご参照ください。
--no-proxy-server
プロキシサーバを使わず、常に直接接続を行います。 他に与えられたプロキシサーバのフラグをすべて上書きします。
--no-sandbox
Chromium の サンドボックス を無効化します。 レンダラープロセスと Chromium ヘルパープロセスにサンドボックスなしの実行を強制します。 テスト時のみ使用すべきです。
--proxy-bypass-list=hosts
セミコロン区切りで与えられたホストに対してプロキシサーバを回避するように Electron へ指示します。 このフラグは —proxy-server
と共に使用される場合のみ有効です。
以下がその例です。
const { app } = require('electron')
app.commandLine.appendSwitch('proxy-bypass-list', '<local>;*.google.com;*foo.com;1.2.3.4:5678')
ローカルアドレス (localhost
、127.0.0.1
など)、google.com
のサブドメイン、foo.com
で終わるホストと 1.2.3.4:5678
を除く、すべてのホストに対してプロキシサーバーが使用されます。