Windows ChromeのWSL2で `$ CHROME_EXECUTABLE `を設定する方法

Windows ChromeのWSL2で `$ CHROME_EXECUTABLE `を設定する方法

WSL2を介してWindowsのchrome実行可能ファイルを使用しようとしています$CHROME_EXECUTABLE

私のbashrcには次のものがあります。

export CHROME_EXECUTABLE="/mnt/c/program\ files/google/chrome/application/chrome.exe"

これにより、flutter doctor苦情は$CHROME_EXECUTABLEChrome実行可能ファイルを指していません。 Bashで実行すると、$CHROME_EXECUTABLE次のような結果が得られます。

bash: /mnt/c/program\: No such file or directory

ただし、実行すると動作し、/mnt/c/program\ files/google/chrome/application/chrome.exeウィンドウ内にChromeインスタンスが開きます。

ここに脱出問題があるようですが、何が起こっているのかよくわかりません。\ 「プログラムファイル」のスペースが脱出しているとしますか?

ベストアンサー1

正直なところ、私はFlutterを使用していないので、ここでは間違っているかもしれませんが、いくつかの簡単な調査によると、Flutterは単にChromeを「実行」する以上の役割を果たしているようです。そのためには、Chromium実行可能ファイルが必要です。言う(おそらくwebdriver経由)デバッグ用です。

その場合は、WindowsバージョンのChromeをLinuxバージョンのFlutterと一緒に使用することはできません。これは次のようになります。Seleniumを含むWindowsバージョンのChromeをお試しください。。これは、パスが正しい場合でも、Windowsバイナリが「Chrome実行可能ファイル」ではないとFlutterが文句を言う理由を説明しています。

この場合の回避策は、WSLにLinuxバージョンのChrome(またはChromium)をインストールすることです。次はこの問題、次の方法でこれを行うことができます。

  • WSLgを使用してWindows上でLinux GUIアプリケーションの実行をサポートするためにWindows 11にアップグレードされました。
  • harrymcの答えに基づいてWindowsでサードパーティのXサーバーを使用する
  • xrdp私の答えに基づいて使用されました。これは直接リンク完全なステップを提供するAsk Ubuntuの回答にアクセスしてください。

xrdp少なくとも私はこの方法を使用してWSLでSeleniumを正常に実行しました。

おすすめ記事