メインコンテンツへスキップ

サポートされているコマンドラインスイッチ

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(() => {
// Your code here
})

Electron CLIフラグ

--auth-server-whitelist=url

統合認証が有効になっているサーバーのカンマ区切りのリスト。

例:

--auth-server-whitelist='*example.com, *foobar.com, *baz'

この場合、example.comfoobar.combazで終わる任意の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のログをstderr(またはログファイル)に出力します。

ELECTRON_ENABLE_LOGGING環境変数は、--enable-loggingを渡すことと同じ効果があります。

--enable-loggingを渡すと、ログがstderrに出力されます。--enable-logging=fileを渡すと、--log-file=...で指定されたファイル、または--log-fileが指定されていない場合はユーザーデータディレクトリのelectron_debug.logにログが保存されます。

**注:** Windowsでは、子プロセスのログをstderrに送信できません。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 すべてを「baz」にリマップしますが、「www.google.com」は除きます。

これらのマッピングは、ネットリクエストのエンドポイントホスト(直接接続のTCP接続とホスト解決、HTTPプロキシ接続のCONNECTSOCKSプロキシ接続のエンドポイントホスト)に適用されます。

--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と合わせて使用する場合、ログの詳細レベルを設定します。NChromeのLogSeveritiesのいずれかである必要があります。

Chromiumの2つの補足的なログ記録メカニズム(LOG()VLOG())は、異なるスイッチによって制御されていることに注意してください。--log-levelLOG()メッセージを制御し、--v--vmoduleVLOG()メッセージを制御します。そのため、必要な粒度と監視しようとしているコードによって行われるログ呼び出しに応じて、これらの3つのスイッチの組み合わせを使用することをお勧めします。

Chromium Loggingソースで、LOG()VLOG()がどのように相互作用するかについて詳しく説明しています。簡単に言うと、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')

ローカルアドレス(localhost127.0.0.1など)、google.comサブドメイン、サフィックスfoo.comを含むホスト、および1.2.3.4:5678のものは除き、すべてのホストにプロキシサーバーを使用します。

--proxy-pac-url=url

指定されたurlのPACスクリプトを使用します。

--proxy-server=address:port

システム設定を上書きする指定されたプロキシサーバーを使用します。このスイッチは、HTTPSおよびWebSocketリクエストを含むHTTPプロトコルのリクエストのみに影響します。また、すべてのプロキシサーバーがHTTPSとWebSocketリクエストをサポートするわけではないことにも注意してください。プロキシURLは、Chromiumの問題によると、ユーザー名とパスワード認証をサポートしていません。

--remote-debugging-port=port

指定されたportでHTTP経由のリモートデバッグを有効にします。

--v=log_level

デフォルトの最大アクティブVロギングレベルを指定します。0がデフォルトです。通常、Vロギングレベルには正の値が使用されます。

このスイッチは、--enable-loggingも渡された場合のみ機能します。

--enable-logging--log-level、および--vmoduleも参照してください。

--vmodule=pattern

--vで指定された値を上書きする、モジュールごとの最大Vロギングレベルを指定します。例:my_module=2,foo*=3 は、ソースファイルmy_module.*foo*.*内のすべてのコードのロギングレベルを変更します。

スラッシュ(/)を含むパターンは、モジュールだけでなく、パス全体に対してテストされます。例:*/foo/bar/*=2は、foo/barディレクトリ下のソースファイル内のすべてのコードのロギングレベルを変更します。

このスイッチは、--enable-loggingも渡された場合のみ機能します。

--enable-logging--log-level、および--vも参照してください。

--force_high_performance_gpu

複数のGPUが利用可能な場合、ディスクリートGPUを強制的に使用します。

--force_low_power_gpu

複数のGPUが利用可能な場合、統合GPUを強制的に使用します。

Node.js フラグ

Electron は、Node.js でサポートされているCLI フラグの一部をサポートしています。

注記:ELECTRON_RUN_AS_NODEで実行されていない場合に、サポートされていないコマンドラインスイッチをElectronに渡しても、効果はありません。

--inspect-brk\[=\[host:]port]

ホストでインスペクタをアクティブ化します。:portそして、ユーザースクリプトの開始時にブレークします。デフォルトのホスト:portは127.0.0.1:9229です。

--debug-brk=[host:]portのエイリアスです。

--inspect-brk-node[=[host:]port]

host:portでインスペクタをアクティブ化し、インスペクタが利用可能になったときに実行される最初の内部JavaScriptスクリプトの開始時にブレークします。デフォルトのhost:port127.0.0.1:9229です。

--inspect-port=\[host:]port

インスペクタがアクティブ化されたときに使用されるhost:portを設定します。SIGUSR1シグナルを送信してインスペクタをアクティブ化する場合に役立ちます。デフォルトのホストは127.0.0.1です。

--debug-port=[host:]portのエイリアスです。

--inspect\[=\[host:]port]

host:portでインスペクタをアクティブ化します。デフォルトは127.0.0.1:9229です。

V8インスペクタの統合により、Chrome DevToolsやIDEなどのツールを使用して、Electronインスタンスのデバッグとプロファイリングを行うことができます。ツールはTCPポートを介してElectronインスタンスに接続し、Chrome DevTools Protocolを使用して通信します。

詳細については、メインプロセスのデバッグガイドを参照してください。

--debug[=[host:]portのエイリアスです。

--inspect-publish-uid=stderr,http

インスペクタのWebソケットURL公開方法を指定します。

デフォルトでは、インスペクタのWebソケットURLはstderrとhttp://host:port/json/listの/json/listエンドポイントで使用できます。

--no-deprecation

非推奨警告を無効にします。

--throw-deprecation

非推奨事項に対してエラーをスローします。

--trace-deprecation

非推奨事項のスタックトレースを出力します。

--trace-warnings

プロセス警告(非推奨事項を含む)のスタックトレースを出力します。

--dns-result-order=order

Node.jsのdns.lookup()およびdnsPromises.lookup()関数のverbatimパラメータのデフォルト値を設定します。値は次のとおりです。

  • ipv4first:デフォルトのverbatimfalseに設定します。
  • verbatim:デフォルトのverbatimtrueに設定します。

デフォルトはverbatimであり、dns.setDefaultResultOrder()--dns-result-orderよりも優先されます。