想问一下 Java 大佬的开发环境, 对 Linux 的依赖大嘛?

2021-08-29 13:02:39 +08:00
 chaleaoch
我指开发环境

用 windows 的 IDEA?
还是 Linux 的 IDEA?
还是其他 IDE?
还是最近新出的 Code With Me?
还是 vscode + remote?

python 和 Go 都会遇到 windows 下不完美的情况.
譬如 Celery 现在已经不支持 windows 平台.
GO 的一些三方模块依赖 cgo, 需要额外安装 mingw.

不知道 Java 是否有类似情况?

谢谢.
4639 次点击
所在节点    Java
29 条回复
leeyuzhe
2021-08-30 10:04:27 +08:00
wsl 2 基本能满足所有要求
yinzhili
2021-08-30 10:05:30 +08:00
jvm 本身是跨平台的,除非你要用到硬件设备交互会比较麻烦点,其它都不必担心
zzzmh
2021-08-30 10:18:38 +08:00
我算是 java 菜鸟,我用 linux 的 idea,之后考虑换 vscode,主要看中 linux 的速度是真的快,例如 maven 打包,同一台电脑不同系统,能快 2 到 3 倍了。。。还有一个隐藏的好处是可以杜绝掉代码写了一半打开一个游戏哈哈。。。不过我 linux 水平也捉急,目前就靠 uos 这种简单易入门的
hq136234303
2021-08-30 10:41:54 +08:00
java 是执行在 JVM 上的。环境的问题是 JVM 会根据当前的环境执行不同的汇编的.所以不存在环境不同的问题。因为你在那个平台生成都是 class 。go 语言编译的时候会根据不同的环境生成不同的汇编。生存的是二进制执行文件。所以 win 编译的和 linux 生成的是不一样的。
julyclyde
2021-08-30 10:57:27 +08:00
@efaun 那说明你装的方法不对
Nich0la5
2021-08-30 11:23:29 +08:00
不玩交叉编译基本没有 极少数几个库依赖特定平台,有些系统调用和文件路径会有影响。公司的百万行 java 项目在 Linux,win,x86mac,arm,mac 上都完美运行
wqhui
2021-08-30 11:53:34 +08:00
java 应用跟什么平台开发没关系,jvm 做好适配了。用 linux 或者 mac 系统主要是有时候找文件、修改文件什么的,懒的用鼠标,就直接敲命令,而 windows 的命令跟 linux 不一样,敲起来很难受。而且大部分公司服务器都是 linux,上传下载东西也方便,scp 就过去了,windows 还要找个工具传
zbw0414
2021-08-30 12:05:10 +08:00
@Rache1
1. 可以复制粘贴。需要自行修改配置开启 https,直接安装启动默认是非 https 的,通过 projector config edit 命令重新配置一下即可。
2. 不跟手的问题,怎么说呢还是看网络吧,如果是云主机基本上就别想了,我这边是公司服务器和办公网在同一网段下,ping<3ms 基本上无感知。
3. 卡顿问题到时没遇到过,可以试试修改 idea 的配置,贴上我自己的配置可以参考
-server
-Xmn1g
-Xms16g
-Xmx16g
-XX:+BackgroundCompilation
-XX:+AggressiveOpts
-XX:+AggressiveHeap
-XX:+UseNUMA
-XX:CICompilerCount=64
-XX:SurvivorRatio=8
-XX:TargetSurvivorRatio=95
-XX:MaxTenuringThreshold=15
-XX:MaxGCPauseMillis=500
Rache1
2021-08-30 12:39:49 +08:00
@zbw0414 我都是跑在本地虚拟机的,还没有上云,都不怎么跟手,后面这个配置我回去试一下看看。

这样的话,复制这个也太烦了,没法复制到外部就算了,内部也不行,晚些时候回去试一下看看

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

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

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

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

© 2021 V2EX