GoLand 2024.2 ヘルプ

WSL

WSL (WSL 2) – Windows Subsystem for Linux – は、Windows 10 以降で Linux バイナリ実行可能ファイルをネイティブに実行するための互換性レイヤーです。現在、Ubuntu、OpenSUSE、SLES など、いくつかの Linux ディストリビューション(英語)をサポートしています。

WSL を設定する

  1. Microsoft ストアから WSL ディストリビューション(Ubuntu など)をダウンロードしてインストールします。

    この手順では、最新の「Fall Creators Update」(最小バージョン 1709、ビルド 16299.15) を適用した少なくとも Windows 10 以降を使用してください。手順については、公式ガイド Windows Subsystem for Linux をインストールするを参照してください。

    WSL 2 を使用するには、Windows のバージョンが 10 ビルド 18917 以降である必要があります。これらの手順(英語)に従って、ディストリビューションを切り替えます。

    GoLand は、システムを Windows 10 のビルド 16299.15 以降にアップグレードする前にインストールした可能性があるレガシー WSL をサポートしていないことに注意してください。この場合、WSL ディストリビューションを更新する必要があります。

  2. Linux ディストリビューションを実行します。

    最初の起動時に、システムは Windows のオプション機能を有効にするように求めるメッセージを表示する場合があります。この場合、次のことを行う必要があります。

    • 管理者として Windows PowerShell を開き、実行します

      Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
    • コンピューターを再起動してください。

  3. ホームディレクトリから、tarball をダウンロードします。

    wget https://go.dev/dl/go1.22.0.linux-amd64.tar.gz
  4. アーカイブを /usr/local に抽出します。

    tar -C /usr/local -xzf go1.22.0.linux-amd64.tar.gz
  5. ホームディレクトリ(cd ~)に、go フォルダーを作成します。

    mkdir go
  6. GOPATH と GOROOT を構成します。

    export GOROOT=/usr/local/go
    export GOPATH=$HOME/go
    export PATH=$PATH:/usr/local/go/bin

プロジェクトを作成して WSL 環境に保存し、WSL ファイルシステムからプロジェクトを開いて、WSL でプロジェクトをさらに開発することができます。

WSL ファイルシステムで新しいプロジェクトを作成する

  1. 必要な Go バージョンを WSL 環境にインストールします。

  2. ウェルカム画面で、新規プロジェクトをクリックします。

  3. 参照ボタンをクリックして、新しいプロジェクトを作成する WSL のディレクトリに移動します。

    ベースディレクトリを選択ダイアログで、新規フォルダーボタン(the New Folder icon)をクリックして、プロジェクトのフォルダーを作成できます。

    WSL のプロジェクトの場所には、\\wsl$ で始まる WSL ファイルシステムへの絶対パスが表示されます。

  4. 作成をクリックします。

    GoLand は WSL にプロジェクトを作成し、IDE を移動せずに WSL 環境内でプロジェクトを開発およびビルドできます。

    create project folder in wsl

WSL ファイルシステムに保存されているプロジェクトを開く

GoLand では、WSL ファイルシステムに保存されているプロジェクトを直接開いて、他のプロジェクトと同じように操作できます。

  • 参照ボタンをクリックして、開きたい WSL ファイルシステムのディレクトリに移動します。また、\\wsl$ プロジェクトの場所へのパスを手動で入力することもできます。

    open existing project in wsl

プロジェクトでコードを実行すると、WSL で実行されます。実行構成を開く場合、GoLand は WSL をローカルマシンとして参照していることに注意してください。

Run configuration

コード実行の結果は、実行ツールウィンドウに表示されます。

WSL でターミナルを構成する

  1. WSL 構成でターミナルを実行するには、プロジェクト設定 / 環境設定Ctrl+Alt+S)を開き、ツール | ターミナルに移動します。

  2. シェルパスフィールドにコマンドを指定します。

    • デフォルトの Linux ディストリビューションを使用する wsl.exe

    • 特定の Linux ディストリビューションを使用するための wsl.exe -d <distribution name>

    変更を保存するには、OK をクリックします。

    Terminal settings
  3. ターミナルツールウィンドウに切り替え、コマンドを入力して出力を確認します。

    Terminal in WSL configurations

プロジェクトに WSL 環境を使用する

Windows 上でローカルにプロジェクトを作成または開き実行ターゲットを使用して WSL でコンパイルされたコードを実行できます。これは、クロスプラットフォーム開発に役立つ可能性があります。

Run tool window: WSL output

WSL 構成を作成する

  1. メインメニューで、実行 | ターゲットの管理をクリックします。

  2. ターゲットを追加ウィンドウから WSL を選択します。

    select wsl from run on list
  3. 新規ターゲットウィザードで、Linux ディストリビューションリストから Linux ディストリビューションを選択します。分布が自動的に検出され、イントロスペクションに合格した場合は、次へをクリックします。

  4. WSL の Go ランタイム構成が正しく検出されたことを確認し、完了をクリックします。

    または、独自の設定を入力します。

    • 実行可能にする : Go 実行可能ファイルへのパス (たとえば、/usr/local/go/bin/go)

    • GOPATH : ワークスペースのルートを定義するパス。ルートディレクトリには、binpkgsrc サブディレクトリが含まれている必要があります。(たとえば、/home/goprojects)

    • バージョン : Go SDK のバージョン番号(たとえば、go1.15.8 linux/amd64)。GoLand は、go version を実行することにより、この情報を自動的に検出します。

    • 追加設定 : ソースコードファイルと実行可能ファイルのディレクトリを設定できるようにする設定のグループ。

      ターゲットで実行するには、GoLand は次のエンティティをターゲットにアップロードする必要があります: ソースコードファイル、作業ディレクトリからのファイル、コンパイルされたバイナリ、掘り下げ。追加設定でパスを指定しない場合、IDE は前述のファイルを格納するためのランダムなディレクトリを作成します。ソースファイルと実行可能ファイルについては、ランダムに生成されたディレクトリを含む次のスクリーンショットを参照してください。

      次のオプションを指定できます。

      • プロジェクトソースディレクトリ : ソースコードファイルがアップロードされるターゲット上のディレクトリ。

      • コンパイルされた実行可能ファイルディレクトリ : コードが生成する実行可能ファイルを格納するために使用されるターゲット上のディレクトリ。

    check Go runtime configuration for WSL
  5. ターゲットの実行ダイアログで、プロジェクトのデフォルトターゲットリストをクリックし、作成した構成を選択します。

    Run tool window: WSL output
  6. アプリケーションを実行します。

    Create a WSL configuration

ファイアウォール構成

プロジェクトのビルドが正しく機能することを確認するには、次の手順を実行する必要があります。

ファイアウォール設定を構成する

  1. 管理者として Windows PowerShell を実行します。

    Restore firewalls to default
  2. WSL を使用した接続を許可するには、次のコマンドを実行します。New-NetFirewallRule -DisplayName "WSL" -Direction Inbound -InterfaceAlias "vEthernet (WSL)" -Action Allow

  3. 次に、ファイアウォールルールを更新するコマンドを実行します。Get-NetFirewallProfile -Name Public | Get-NetFirewallRule | where DisplayName -ILike "IntelliJ IDEA*" | Disable-NetFirewallRule

  4. 次に、デバッガーセッションを開始しますWindows ファイアウォールポップアップが表示されたら、パブリックネットワークチェックボックスを選択します。

    Allow public networks

関連ページ:

JetBrains Gateway に接続して操作する

SSH 接続を使用してリモートサーバーに接続し、プロジェクトを開発、実行、デプロイできます。前提条件:リモートマシンで開発を開始する前に、次のものがあることを確認してください。リモートマシン(IDE のターゲット)は、IDE の記事にある推奨される最小要件を満たしています。Linux プラットフォームに互換性のある SSH サーバーをインストールしました。Linux プラットフォームには、Ubuntu 16.04+、RHEL/Centos 7+ などの最近の Linux AMD64 ディストリ...

実行

プロジェクトに GOROOT セットアップがある場合は、GoLand からアプリケーションを直接実行できます。簡単な方法:エディターから実行プログラムにパラメーターを渡さず、プログラムを開始する前に特定のアクションを実行する必要がない場合は、エディターから直接実行できます。クラス宣言の近くのガターでクリックし、実行を選択します。スクリプトを実行するには、スクリプトをエディターで開くか、プロジェクトツールウィンドウで選択して、コンテキストメニューから実行 <script file name...

新規プロジェクトを作成する

デフォルトでは、GoLand は Go モジュールプロジェクトの作成を提案しています。Go モジュールを使用すると、プロジェクトファイルを GOPATH に保持する必要がなく、プロジェクトの依存関係を簡単に管理できます。go.dev で Go モジュールの詳細を参照してください。複雑な依存関係管理を必要としないプロジェクトで作業する場合は、Go (GOPATH) プロジェクトの作成を検討してください。Go モジュールがない場合は、ソースコードを GOPATH ディレクトリ(Go ワークスペース)に保...

プロジェクトのインポート

既存プロジェクトを開く GoLand へようこそダイアログで、オープンをクリックします。または、をクリックします。ファイルブラウザーで、プロジェクトファイルのあるフォルダーに移動し、オープンをクリックします。OK をクリックします。プロジェクトを開いたら、Go SDK の場所を指定する必要があります。SDK へのローカルパスを指定するか、ダウンロードできます。Go SDK を設定するには、設定を開き、に移動します。SDK の追加ボタンをクリックして、2 つのオプションから選択します。SDK の追...

ターゲットの実行

特定の実行 / デバッグ構成については、クラウドや Docker コンテナーなどの別の環境でコードを GoLand から直接実行できます。この機能を使用すると、アプリが対象としている実際の環境に対して変更を即座にテストできます。これにより、本番環境に移行するときに非互換性が発生しなくなります。これは、環境に大きく依存するコードで作業する場合に特に重要です。このような環境でアプリを直接実行すると、何かが変更されるたびにアプリをデプロイして実行するために通常必要な余分なアクションも不要になります。アプリ...

デバッガーセッションを開始する

デバッガーセッションの開始は、プログラムを通常モードで実行するのと非常によく似ています。デバッガーはバックグラウンドで接続されているため、デバッガーセッションを開始するために特別な設定を行う必要はありません。GoLand からプログラムを実行できる場合は、同じ構成を使用してプログラムをデバッグすることもできます。プログラムをデバッグするたびに、デバッガーセッションは実行 / デバッグ構成に基づいています。GoLand を構成して、プログラムを起動する前に任意のパラメーターを使用し、任意のアクショ...