idea 2021.2.2 社区版 + wsl2 卡炸了,开项目很慢

2021-09-10 09:51:59 +08:00
 liuzh365

网上冲浪的时候看到说最新的 idea 支持 wsl2 的开发环境,于是装了个最新版,把 wsl1 升到了 wsl2,然后 wsl 里面已经有 java 和 maven 环境了,然后我按网上的建议,把项目代码迁到 wsl 里面开发,发现 idea 非常的卡(开项目建索引),点一下鼠标都卡好几下的样子。我试了把代码和环境变量在 wsl 和 windows 来回迁,都有问题:

( 1 )开发环境、代码都在 wsl2 里面:idea 非常卡,根本没法正常使用。(怀疑跟 wsl2 比较拉的 IO 有关)而且不显示项目目录,只有一个 pom.xml 。我把.idea 缓存删掉之后重开,idea 直接闪退,再开的话就还是没有项目目录。。。。 ( 2 )开发环境在 wsl2,代码在 windows:idea 根本检测不到 wsl2 里面的 java 环境,一直显示 no sdk,手动指定也没用。 ( 3 )开发环境、代码都在 windows (我装 wsl2 干嘛?):wsl2 识别不了 windows 的 java.exe 环境,linux 应该是要二进制的 java 。而且这样就背离了装 wsl2 的初衷。

是不是我哪里没装对啊?

12795 次点击
所在节点    Java
77 条回复
6IbA2bj5ip3tK49j
2021-09-10 11:11:17 +08:00
这属于上了某些软吹的当。

吹 WSL1 速度快,API 是 Clean Room 实现的,多牛逼,但是不提 API 兼容的复杂度,最后复杂到直接砍了。
吹 WSL2 兼容好,但是不提 IO 速度一坨屎。


还有一个 Windows Terminal,建议楼主去学习体验下,就能彻底放弃对 Windows 的幻想了。
Saxton
2021-09-10 11:24:14 +08:00
我也遇到了,我更新到了最新的 idea,只要一打开 pom.xml 秒卡死,我本来想开 JVM 调试工具的,结果连调试工具跟着一起卡死,最后放弃了
EIJAM
2021-09-10 12:05:23 +08:00
不稀奇,wsl 就是个缝合怪胎,什么幺蛾子都会有
ClutchBear
2021-09-10 12:12:15 +08:00
Version: 2021.2.1
Build: 212.5080.55
24 August 2021
刚刚看到最新版本是这个啊.
mmdsun
2021-09-10 12:47:26 +08:00
用 vscode remote + WSL2 流畅的飞起。

你使用姿势不对,去看 visual studio code 文档和 WSL 2 文档。
zxCoder
2021-09-10 12:53:09 +08:00
@Macolor21 关键是 windows 用 docker 好像比较麻烦吧,还不如 WSL
zxCoder
2021-09-10 12:53:54 +08:00
jetbrain 好像很多 ide 还没有跟 wsl2 完美结合
zxCoder
2021-09-10 12:55:11 +08:00
@justrand 问一下这个具体是怎么配置开发环境的? ide 装在虚拟机里吗
ch2
2021-09-10 12:55:24 +08:00
你需要把 goland 装在 wsl2 里,然后再用 x11 转发 gui 到 windows 上
Macolor21
2021-09-10 13:04:57 +08:00
Macolor21
2021-09-10 13:07:36 +08:00
@zxCoder

Windows 的 Docker 不是基于 WSL2 或 Hyper-V 么?我只知道部分机器安装可能麻烦些,实际用起来 Docker 应该比 WSL2 舒服把?(虽然我没用过 WSL2 )
liuzh365
2021-09-10 13:10:33 +08:00
@ClutchBear 打错了,是 2.1
liuzh365
2021-09-10 13:11:34 +08:00
@mmdsun spring 开发还是 idea 舒服点
ikas
2021-09-10 13:12:46 +08:00
wsl2 io 提升是指 wsl2 内部操作 io 的提升
当前阶段,你要么把 idea 也装到 wsl2 中..然后通过 wsgl 直接显示,要么通过远程,不管是 idea 远程过来或者只是远程部署与编译....
说真的..当你的工作真的需要 linux 才能完成时,那才需要用 wsl2.比如我做安卓,需要编译下安卓,那么直接 wsl2 编译就很方便.
aosp 源码直接在本地 ext4 分区.然后挂载到 wsl2
BeautifulSoap
2021-09-10 13:19:58 +08:00
ls 那么多人也真是的。。。虽说 wsl2 的确很多问题,但你们基本都是一个劲只会黑,也不给 lz 提供切实有效的解决方案。。。。。。

作为用 wsl2 主力开发一年多没多少屁事的,我给 lz 个建议,lz 你直接把 idea 装 wsl2 里,所有开发环境也放到 wsl2 里,界面通过 x server 传到 win10,让你获得丝滑开发体验。这样的开发方针至今没出过什么幺蛾子(除了输入法麻烦了点)

微软自己就出过怎么做的教程,总体来说可以说是极其简单

https://techcommunity.microsoft.com/t5/windows-dev-appconsult/running-wsl-gui-apps-on-windows-10/ba-p/1493242

也许有人会说你都完全塞 wsl2 了干嘛不用单独虚拟机,答案很简单,虚拟机能像 wsl2 这么轻量,文件操作方面和系统集成这么好,像 wsl2 这样多个虚拟机共用同一块内存,像 wsl2 这样 windows 和 linux 共用同一个 docker 的话,我也乐的迁移虚拟机
leeyuzhe
2021-09-10 13:47:40 +08:00
所以我用 wslg,虽然也有一些 bug,但是最起码能用,windows 下面的 idea+wls2 基本不能用,全是问题
@xgfan Windows Terminal 挺好用啊,有什么问题?
6IbA2bj5ip3tK49j
2021-09-10 14:31:12 +08:00
u823tg
2021-09-10 16:39:43 +08:00
还好吧,没遇到啥大问题。 不过 java 这种没必要环境要 wsl 吧。
zeni123
2021-09-10 17:53:07 +08:00
java 就不需要 WSL 了吧。shared folder 好了。 代码也不用共享了,共享 artifacts 好了。
Zien
2021-09-10 18:14:43 +08:00
Java 没试过 和你一样的操作 C 没问题

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/800977

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX