chaleaoch
V2EX  ›  Java

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

  •  
  •   chaleaoch · Aug 29, 2021 · 6050 views
    This topic created in 1896 days ago, the information mentioned may be changed or developed.
    我指开发环境

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

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

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

    谢谢.
    29 replies  •  2021-08-30 12:39:49 +08:00
    rockddd
    rockddd
    Aug 29, 2021
    1
    没有
    dethan
    dethan
    Aug 29, 2021 via Android❤️3
    2
    可以做到 0 依赖
    chendy
    chendy
    Aug 29, 2021❤️1
    3
    jvm 表示哪都一样
    除非你要搞 jni jna 啥的
    Junzhou
    Junzhou
    Aug 29, 2021
    4
    和你用啥平台的 idea 没关系。
    zbw0414
    zbw0414
    Aug 29, 2021
    5
    我现在基本上都是用 projector ( jetbrains 家的远程工具,正如其名 [投影仪] ),确实如你所说,cgo 交叉编译配置太繁琐。
    前阵子申请换成了 mba m1,配合公司 64c256g 的服务器还是很香的。
    realpg
    realpg
    Aug 29, 2021❤️1
    6
    国内 90%的 JAVA 开发者,开发电脑不是 LINUX
    ila
    ila
    Aug 29, 2021 via Android
    7
    @realpg 穷让我用 linux 开发,同样 8g 内存,linux 下跑的更加顺畅
    realkenshinji
    realkenshinji
    Aug 29, 2021 via iPhone
    8
    我们公司 CTO 用 linux + emacs
    Cbdy
    Cbdy
    Aug 29, 2021❤️1
    9
    Java 的话,如果不用 JNI 之类的,只要有 JDK 就可以作开发了
    Jooooooooo
    Jooooooooo
    Aug 29, 2021
    10
    你用 txt 都能写
    lap510200
    lap510200
    Aug 29, 2021❤️2
    11
    如果你用的是 mac 我不清楚,咱的 mac 吃灰中,用的公司电脑,主流都是 windows+idea
    efaun
    efaun
    Aug 29, 2021❤️1
    12
    一直在用 win 环境做开发,不太能理解用 mac 或者 linux 开发的需求,装些环境都要自己编译,有那时间用 win 安装 exe 摸个鱼不好吗
    doyen
    doyen
    Aug 29, 2021
    13
    看自己喜欢呗。
    WebKit
    WebKit
    Aug 29, 2021 via Android
    14
    @efaun 不需要啊。。。
    kwanzaa
    kwanzaa
    Aug 29, 2021
    15
    你在试图找打 JVM 脸的方法哈哈哈哈
    chaleaoch
    chaleaoch
    OP
    Aug 29, 2021
    16
    @kwanzaa 我是 Java 新手, python 和 Go 也是跨平台的 但是总能找到一些依赖 Linux 的第三方模块.
    不知道 Java 有没有.

    不过根据楼上大佬的回复, 看来是不多.
    Cbdy
    Cbdy
    Aug 29, 2021 via Android❤️1
    17
    @chaleaoch
    关于你的这个问题,维基百科专门有个词条
    https://en.m.wikipedia.org/wiki/Write_once,_run_anywhere
    kingfalse
    kingfalse
    Aug 30, 2021 via Android
    18
    mbp+linuxmint 台式机
    xuanbg
    xuanbg
    Aug 30, 2021
    19
    编码过程完全不依赖任何平台和操作系统。
    Rache1
    Rache1
    Aug 30, 2021
    20
    @zbw0414 这玩意儿,前两周用了几天,有几个问题。

    1 、不能复制 /粘贴,搜了一下,去年就有人提过,一直没解决。

    2 、另外看代码的时候滚动也不够跟手。

    3 、尽管我是在虚拟机运行,配置已经给到了 6c12g,用了一段时间开了 3 个项目后,卡到飞


    PS: 非浏览器运行,使用 projector 客户端登录
    ThisDay
    ThisDay
    Aug 30, 2021
    21
    wsl 2 基本能满足所有要求
    yinzhili
    yinzhili
    Aug 30, 2021
    22
    jvm 本身是跨平台的,除非你要用到硬件设备交互会比较麻烦点,其它都不必担心
    zzzmh
    zzzmh
    Aug 30, 2021
    23
    我算是 java 菜鸟,我用 linux 的 idea,之后考虑换 vscode,主要看中 linux 的速度是真的快,例如 maven 打包,同一台电脑不同系统,能快 2 到 3 倍了。。。还有一个隐藏的好处是可以杜绝掉代码写了一半打开一个游戏哈哈。。。不过我 linux 水平也捉急,目前就靠 uos 这种简单易入门的
    hq136234303
    hq136234303
    Aug 30, 2021
    24
    java 是执行在 JVM 上的。环境的问题是 JVM 会根据当前的环境执行不同的汇编的.所以不存在环境不同的问题。因为你在那个平台生成都是 class 。go 语言编译的时候会根据不同的环境生成不同的汇编。生存的是二进制执行文件。所以 win 编译的和 linux 生成的是不一样的。
    julyclyde
    julyclyde
    Aug 30, 2021
    25
    @efaun 那说明你装的方法不对
    Nich0la5
    Nich0la5
    Aug 30, 2021
    26
    不玩交叉编译基本没有 极少数几个库依赖特定平台,有些系统调用和文件路径会有影响。公司的百万行 java 项目在 Linux,win,x86mac,arm,mac 上都完美运行
    wqhui
    wqhui
    Aug 30, 2021
    27
    java 应用跟什么平台开发没关系,jvm 做好适配了。用 linux 或者 mac 系统主要是有时候找文件、修改文件什么的,懒的用鼠标,就直接敲命令,而 windows 的命令跟 linux 不一样,敲起来很难受。而且大部分公司服务器都是 linux,上传下载东西也方便,scp 就过去了,windows 还要找个工具传
    zbw0414
    zbw0414
    Aug 30, 2021
    28
    @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
    Rache1
    Aug 30, 2021
    29
    @zbw0414 我都是跑在本地虚拟机的,还没有上云,都不怎么跟手,后面这个配置我回去试一下看看。

    这样的话,复制这个也太烦了,没法复制到外部就算了,内部也不行,晚些时候回去试一下看看
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1800 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 64ms · UTC 06:45 · PVG 14:45 · LAX 22:45 · JFK 01:45
    ♥ Do have faith in what you're doing.