为什么 Java 的包管理器都这么复杂?

2021-02-15 18:04:09 +08:00
 SystemLight
  1. 反观 node 的 npm,python 的 pip,.net 的 nuget 哪一个不是一个命令就安装好的依赖包
  2. 为何 java 的 gradle 或者 maven 都没有这样的特性,还需要自己去配置文件而不是命令安装,而且 gradle 用的 groovy 闭包写法外行看了完全懵逼,而 npm 的 package.json 用 json 语法易读相当高
  3. Java 包管理方案难道就不能简单一点,为何要搞得如此复杂,难道不应该是花费更多精力处理业务逻辑么,包管理搞得如此复杂还要去配置这个东西
20256 次点击
所在节点    Java
158 条回复
ciaoly
2021-02-17 10:25:02 +08:00
老板:就喜欢看你们吵来吵去,谁也不服谁,然后乖乖地在我手下拼命干活的样子。
misaka19000
2021-02-17 11:00:59 +08:00
真是时代变了,pip 和 npm 居然也敢来和 maven/gradle 来比较了 :)
ZnBDPang
2021-02-17 12:52:25 +08:00
慎防钓鱼
iseki
2021-02-17 14:51:10 +08:00
没用过 pip 不评价,gradle 确实不能一键跑命令加依赖,但是 kt 写起来舒服坏了…
npm…也许 package.json 看起来一目了然,但是有点事还是要去自己折腾 package.json 以外的东西。暂且不提 node_modules 这破玩意儿
lllpla
2021-02-17 16:08:54 +08:00
npm 是最挫的包管理 没有之一
gaoshiba
2021-02-17 17:51:49 +08:00
@wiix 哇,哪里都有杠精,喜欢杠一下啊。
zhaiduo
2021-02-17 18:26:00 +08:00
我的理解,用法越复杂,其实是越灵活的,兼容性越好。
beginor
2021-02-17 22:04:03 +08:00
各位,我工地上缺抬杠的,谁来报个名?😂
ikas
2021-02-17 23:43:06 +08:00
说一个场景吧,一个多人多模块的项目,每个人有各自的模块,使用 maven,然后配置 profile,modules,SNAPSHOT 等等,每个人只需要加载自己的模块代码,别人的项目直接从 maven 私服下载编译好的 SNAPSHOT 版本,每个人自己的模块编写一定程度后也上传 SNAPSHOT 版本到私服.如果需要调试其他模块,那么勾选需要的 profile 即可.
不知其他工具如何实现呢
wiix
2021-02-18 02:37:13 +08:00
@gaoshiba 所以,是谁在杠?
tikazyq
2021-02-18 09:19:29 +08:00
来鱼塘赏鱼
gaoshiba
2021-02-18 11:13:15 +08:00
@wiix 你不是杠精吗?我只是提到一下学到新东西了。你就开始来说我不学不用了,我为什么要学?有的东西知道也好,不知道也罢,能影响我多少?考清华北大的书都出来了几百年,你不学不用让我怎么帮你?对吧??杠精同志???
yinzhili
2021-02-18 12:26:41 +08:00
npm 这种玩具,也配和 maven 相提并论吗
zm8m93Q1e5otOC69
2021-02-18 13:32:27 +08:00
@matrix67 带好人
apeCoder
2021-02-18 15:36:34 +08:00
虽然 maven 不怎么样,但是 npm 事真的垃圾,
SuperXRay
2021-02-19 10:38:15 +08:00
第一次听到贬 maven,gradle 而夸 npm(pip nuget 不理解不评价)
和 java 的包管理比,前端的包管理就像一坨屎
SuperXRay
2021-02-19 10:43:16 +08:00
#156
Sun<Neutron<Black hole<node_module
这恶搞的张经典图大家应该不陌生吧
unbright
2021-02-23 10:36:54 +08:00
这个对比不太恰当,包管理仅仅只是 maven 或者 gradle 的一个功能而已,项目构建测试部署等等一套他都可以做,准确的说应该是工程管理了,npm 才是包管理器,要构建还得结合其他的组件,而且下载的那个 node_modules.。。。。。。个人感觉他是最垃圾的了,没有之一

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

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

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

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

© 2021 V2EX