当前位置: 首页 > news >正文

在 GoLand 中配置 WSL 环境跨平台开发的完整指南

在 GoLand 中配置 WSL 环境跨平台开发的完整指南

https://pickgithub.com

该片博客因由

为何要做这些步骤,直接在Window开发不行吗?

有些项目如DiceDB ,目前只支持在linux和mac下开发,想要在Window下开发除了安装虚拟机就只有这个办法可行了

引言

在现代开发环境中,跨平台开发变得越来越普遍。为了在 Windows 上利用 Linux 环境的强大功能,许多开发者选择使用 Windows Subsystem for Linux (WSL)。本文将详细介绍如何在 Windows 上的 GoLand 中配置 Go SDK,以便在 WSL 中进行开发。

目录
  1. 安装 WSL
  2. 在 WSL 中安装 Go
  3. 在 WSL 中移动和配置项目
  4. 在 GoLand 中配置 WSL 和 Go SDK
  5. 验证配置
1. 安装 WSL

首先,我们需要在 Windows 上安装 WSL。

  1. 启用 WSL 功能

    • 打开 PowerShell,以管理员身份运行以下命令:
      wsl--install
    • 该命令将自动启用 WSL 并安装 Ubuntu 作为默认发行版。
  2. 重启计算机

    • 完成安装后,系统将提示重启计算机。按照提示重启。
  3. 设置 WSL

    • 重启后,启动 Ubuntu。你将被要求创建一个新的用户和密码。按照提示完成设置。
  4. 设置 WSL 2

    • 确保你的 WSL 版本是 WSL 2:
      wsl --set-default-version2
  5. 检查 WSL 安装

    • 在 PowerShell 中运行:

      wsl--list--verbose
      wsl -l -v
    • 如果按照了docker,那么也会有一个wsl,但是是阉割版

    • 确保你的 Linux 发行版处于运行状态,并且版本为 2。

2. 在 WSL 中安装 Go

在 WSL 中,我们需要安装 Go 编程语言。

  1. 进入 WSL 终端

    • 在 PowerShell 中运行:
      wsl
    • 或者直接从开始菜单中启动你的 Linux 发行版(如 Ubuntu)。
  2. 更新包列表

    • 运行以下命令更新包列表:
      sudoaptupdate
  3. 下载 Go 安装包

    wgethttps://go.dev/dl/go1.22.5.linux-amd64.tar.gz
  4. 解压安装包

    sudotar-C/usr/local-xzfgo1.22.5.linux-amd64.tar.gz
  5. 设置环境变量

    • 编辑.bashrc文件:
      nano~/.bashrc
    • 添加以下内容到文件末尾:
      exportPATH=$PATH:/usr/local/go/bin
    • 保存并关闭文件,然后运行:
      source~/.bashrc
  6. 验证安装

    • 运行以下命令确认安装:
      go version
    • 应该输出go version go1.22.5 linux/amd64
3. 在 WSL 中移动和配置项目

将你的项目文件移动到 WSL 文件系统中,并配置 Go 环境。

  1. 创建项目目录

    • 在 WSL 终端中创建一个新的项目目录:
      mkdir-p~/go_projects/my_project
  2. 移动项目文件

    • 打开 Windows 文件资源管理器,找到你的项目文件并复制。

    • 在 WSL 终端中,将文件粘贴到新创建的目录中:

      cp-r/mnt/c/Users/YourUsername/GoProjects/MyProject/* ~/go_projects/my_project/

      或者在\\wsl.localhost\Ubuntu\home将项目拖放进去

    为什么需要把项目放进wsl?因为如果不放进去,设置golang idea 的go sdk为wsl 的go sdk会报错,所以想要将项目改为linux项目

  3. 配置环境变量

    • 打开~/.bashrc~/.profile文件,添加以下内容:
      exportGOPATH=$HOME/goexportGOROOT=/usr/local/goexportPATH=$PATH:$GOROOT/bin:$GOPATH/bin
    • 运行以下命令以应用更改:
      source~/.bashrc
4. 在 GoLand 中配置 WSL 和 Go SDK
  1. 打开 GoLand 并导入项目

    • 启动 GoLand,选择File->Open
    • 导航到\\wsl$\Ubuntu\home\your_username\go_projects\my_project并选择项目目录。
  2. 添加 Go SDK

    • 在 GoLand 中,前往File->Settings->Go->Go SDK
    • 点击右上角的+按钮,选择WSL,并选择 Go 的安装路径(通常是/usr/local/go)。
      jh@DESKTOP-K7CVTO9:~$ which go /usr/local/go/bin/go
  3. 设置项目结构

    • 确保在File->Settings->Go->GOPATH中,设置正确的GOPATH(通常是~/go)。(可忽略)
5. 验证配置

  1. 打开 GoLand 终端
  • 在 GoLand 中,打开终端(View>Tool Windows>Terminal)。
    wsl.exe --distribution Ubuntu
  1. 确认终端类型

    • 确保终端显示的是 WSL 的提示符(例如username@hostname)。
  2. 检查 Go 版本

    • 在 GoLand 的终端中运行:
      go version
    • 确保它显示的是 WSL 中的 Go 版本。
  3. 配置Run Targets

附:期间坑比较多,需要注意如果Window已经安装了docker,那么也会有一个阉割版的wsl,需要重新再安装一个Ubuntu的wsl,并安装go

在设置sdk时候发现不能选择wsl,原因是项目是Window的而不是linux 于是将项目移入wsl中才可以正常设置sdk为wsl中的go

http://www.jsqmd.com/news/981667/

相关文章:

  • OBS Move Transition插件未来展望:路线图与功能扩展可能性
  • 深入解析恩智浦K60微控制器:从Cortex-M4内核到外设实战应用
  • 终极免费Excel批量查询工具:让跨文件数据检索效率提升100倍的完整指南
  • 从草图到成品:ёRadio PCB设计与焊接教程
  • 嵌入式硬件开发实战:深度解析MCU外设时序与电气规格设计要点
  • Beyond Compare 5 终极激活指南:开源密钥生成工具完整教程
  • UrBackup客户端配置全攻略:10个关键设置优化备份性能与安全
  • XUnity Auto Translator:三步快速安装,让外语游戏秒变中文的终极指南
  • 2026无锡防水补漏公司排名千层坝 - 资讯快报
  • 钯金回收厂家哪家性价比高:回收价格与手续费透明化,成本精算 - 品牌2026
  • K20 TSI电容触摸传感:从RC振荡原理到嵌入式实战调试
  • G-Helper终极方案:AMD CPU降压深度解析与实战指南
  • NXP KV30F MCU电气规格深度解析:时钟、ADC与通信接口设计实战
  • 如何在5分钟内将Chrome变成专业级Markdown阅读器?markdownReader插件完全指南
  • Magpie:重新定义你的Windows窗口显示体验
  • 2026年6月合肥黄金回收白皮书解读:正规平台测评 + 避坑全攻略+免费上门靠谱推荐 - 速递信息
  • YimMenu底层内存注入与Hook机制实现原理深度解析
  • ClickHouse ReplicatedMergeTree:多副本架构与数据一致性保障
  • APKMirror安卓客户端:安全下载APK文件的终极免费解决方案
  • 如何用Ultimate Vocal Remover 5.6实现专业级音频分离:3步完成人声提取的完整指南
  • 果速修官方电话是多少?郑州武汉成都重庆东莞假冒号码全面曝光(2026年6月更新) - GrowthUME
  • 八大网盘文件直链获取:免费开源工具终极使用指南
  • 2026年湖南胶粘剂厂家全景评测:从长沙源头工厂到全球供应链的深度对标指南 - 企业名录优选推荐
  • SwiftKit社区贡献指南:如何参与SwiftKit开源项目的开发
  • LPC13xx系列MCU低功耗模式实战:从睡眠到深度掉电的嵌入式设计指南
  • 【NLP】第十四章:Transformer论文解读
  • 2026年无锡电动推杆源头厂家与全国防爆电动执行机构深度选型指南 - 企业名录优选推荐
  • 深入解析Kinetis KL17引脚复用与FlexIO模块:释放嵌入式硬件设计潜力
  • LPC13xx电气特性解析:从参数到低功耗与接口设计实战
  • Java控制台匿名聊天室完整实现(含可运行工程+课程报告+实操截图)