文档章节

maven你这个烂东西

Q_J
 Q_J
发布于 2016/02/29 23:20
字数 535
阅读 192
收藏 1

Maven自己命令行编译倒是爽了,可调试时总需要Eclipse之类的IDE吧,好了,导入到IDE里后,IDE经常编译出错,jar下载等这个那个问题总有,少有安静成功的。

 

pom.xml里设定的编译器版本,根本不听从IDE的Workspace级别的Compiler设定啊。

pom.xml里还有什么一堆repo定义, 一堆名字,哪里能很快搞清楚某个jar的版本在哪里指定的和从哪里下载的啊。

为了这点破事,有时还得去maven的repo网站里查,IDE属性里是有,但是不能够文字形式检索啊,哎,真不贴心。

 

对比NodeJS的NPM包管理,简直是惭愧该撞墙!NPM里默默lib的版本都在package.json里写的清清楚楚。

不过归根结底,Java,C#什么的都没法做到NodeJS那样让不同版本的lib共存。

 

这些Maven之类的所谓依赖管理,根本不能解决根本问题,反而藏污纳垢!对于大多数项目经给人添烦恼。

 

Gradle这种倒是问题少多了,不过依然在沿用maven的仓库,恶心,jar版本号的查找仍然不方便。

 

追加:

起因是因为我把 https://github.com/swagger-api/swagger-codegen 里的所有maven 工程都导入到Spring Boot Tool Suite(Eclipese)后,有好几个工程都出错,手动改改配置就好了,就是加个编译器的版本号设定之类的。

环境: Mac,  Java: 6,7,8。当前是8。

这一下,新仇旧恨,觉得maven 的插件多年来依然没有长进,又联想到前不久有个同事说他的gradle工程死活运行失败后来发现是依赖的jar版本问题,发现确定jar的版本最后居然得靠肉眼,因为pom.xml里大多数东西都不写版本号,只是一个仓库名称。哎,无聊,这些东西很多人都碰到过,只是都觉得无所谓,因为反正maven compile之类的命令没问题。

 

 

 

 

© 著作权归作者所有

共有 人打赏支持
Q_J

Q_J

粉丝 12
博文 67
码字总数 54682
作品 0
日本
私信 提问
加载中

评论(7)

Q_J
Q_J

引用来自“HulkZ”的评论

因为你没有用对 IDE。少了一个A
小菜,改点配置就好了。只是不爽。
Q_J
Q_J
不要安装jdk5啊。
Q_J
Q_J

我用的是Eclipse(Spring Boot Tool Suite)。的确,maven的一些毛病因为不影响运维,大家碰到问题就手动搞一下罢了,改改pom.xml, 改改java lib里参照的版本之类的就好了,都是很小的改动。

只是不爽啊,命令行都好好的,倒入到Eclipse/IDEA里就得手动搞一下,多无聊。

随便找个例子,机器里只安装jdk6,7,8的人,试试看这个:
https://github.com/swagger-api/swagger-codegen

看有多少人能把这里面的所有maven项目都倒入到Eclipse里之后不出错,前提是不准修改任何配置。
HulkZ
HulkZ
因为你没有用对 IDE。少了一个A
泥沙砖瓦浆木匠
泥沙砖瓦浆木匠
没看到本质,gradle没有质创新,就依靠语法简单和机制灵活点罢了
Q_J
Q_J

引用来自“暴走的蛇”的评论

小伙儿有点过于偏激了,任何事物的存在必然有它的道理,maven确实存在各种问题,但是你转过头看看在maven之前的ant呢?ant之前有人用export导出打包呢是不是觉的maven好太多了?
没啥,N年来maven的争论一直很多,不差我一个,我只是说出事实,让人在新项目里用他时掂量掂量。
暴走的蛇
暴走的蛇
小伙儿有点过于偏激了,任何事物的存在必然有它的道理,maven确实存在各种问题,但是你转过头看看在maven之前的ant呢?ant之前有人用export导出打包呢是不是觉的maven好太多了?
Jenkins+MVN+Tomcat+Centos实现自动化部署

运维最大的悲剧就是熬夜跟着开发 进行线上部署调试bug,这是我最不想看到的,不过最近老大研究除了一个很好的东西,虽然是烂大街的东西,但是解决了我最容易加班的事情,下面就来说说搭建的具...

xinsir999
2017/09/27
0
0
浅说动态生成Class实现MVC

前言 java web的MVC,一个烂的不能再烂的一个话题了,可以说,现在市面上或者网上一搜,都有很多很优秀的MVC框架。那么这里为什么还要写一篇着相关的文章呢,在这介绍下本文的背景,之前帮一...

Erroooooor
2013/10/17
0
16
一文读懂 Spring 集成 Redis

前言 关于 已然是烂大街的技术了,但是近日新起了一个项目需要集成 ,看了一下之前的封装实在是不怎么优雅,于是查了一下发现了一个非常简单的解决方案,那就是 家族的 。话不多说直接“上码...

技术小能手
11/05
0
0
【转载】如何编写maven plugin (一) 基础

当maven内置的功能不能满足需求的时候怎么办?那只能给它写插件了。 网络上很多maven的文章,但基本很少谈及如何给它写插件,即使你搜索maven plugin,也只是给你返回一堆如何使用maven插件的...

mj4738
2012/02/06
0
2
采用json-lib进行Map与Json转换

Json转换工具实在之多,最近又听说FastJson对Java序列化和反序列化最优,相比 Java自带序列化、Json-lib、Jackson等。不过本人很青睐Gson,但是好像用的人也不是很多,项目中用的最多的就是垃...

learn_more
2015/03/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

控制台打印图片

function dev(){ if (window.console){ console.log("%c\n ", "font-size:100px;background:url('http://gmcyzs.com/resources/images/logo.png') no-repeat"); console.log('%c 深务平台,\......

羊皮卷
9分钟前
0
0
MyBaties的二级缓存

二级缓存介绍 在上文中提到的一级缓存中,其最大的共享范围就是一个SqlSession内部,那么如何让多个SqlSession之间也可以共享缓存呢,答案是二级缓存。 当开启二级缓存后,会使用CachingExec...

嘴角轻扬30
9分钟前
0
0
10.新增博客功能-结束语---《Beetl视频课程》

本期视频实现发布新博客功能 一起学beetl目录:https://my.oschina.net/u/1590490?tab=newest&catalogId=6214598 作者:GK 教程进入了尾声,该讲的知识点基本讲到了,本节课不会讲新的知识点。...

Gavin-King
14分钟前
1
0
SpringBoot项目热部署

IntelliJ IDEA开发工具 1.需要在pom.xml文件中加入以下依赖。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> ......

llsydn
16分钟前
0
0
JVM问题排查也不是很难--工具使用

目录 概述 环境准备 工具介绍 远程连接方式 开启JMX 工具远程连接 参考文献 概述 线上环境中,程序越来越慢,一头雾水?遇到程序经常宕机,但找不到原因?排查问题却经常记不住命令? 那是没找到好...

java_龙
19分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部