サポートされているコマンドラインスイッチ
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.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のログを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プロキシ接続の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つのスイッチの組み合わせを使用することをお勧めします。
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')
ローカルアドレス(localhost、127.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:portは127.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:デフォルトのverbatimをfalseに設定します。verbatim:デフォルトのverbatimをtrueに設定します。
デフォルトはverbatimであり、dns.setDefaultResultOrder()は--dns-result-orderよりも優先されます。