标签: Java


  1. IntelliJ常用配置备忘

    前言最近IntelliJ又由于自己的骚操作给弄崩溃了,导致之前弄的一大波配置又找不到了,十分蛋疼的又要开始重头开始弄环境。很多之前精心搞过的配置又都记不住了,为了防止以后出现这种情况,这里就把我日常用的配置和注意点记一下,免得以后又要重新摸索。尽量持续更新。安装安装这块没啥好说的,不过要注意的是,虽然 IntelliJ 有 Community 版,但是毕竟还是少了一些东西的,比如对JavaScript的支持、一些静态检查的支持、Spring框架的整体支持等等。因此还是不要太委屈自己了,安装个正式…

    Java, Tools阅读全文

  2. sofa-ark类隔离技术分析调研

    问题痛点最近维护了一段时间的组件包,在向同事进行推广的时候,经常会听到身边会有类似的抱怨:我靠,为啥你们的包带了一大堆乱七八糟的依赖,把我的classpath都给污染的不像个样子了。我靠,你们这个包依赖的xx包的版本跟我们自己依赖的xx包的版本不一样啊,会不会出锅?我靠,我这个代码编译的时候没问题啊,为啥一用你们的组件就报一堆的NoSuchMethodError啊。有时候自己写代码的时候也会遇到一些容易被忽略的问题:哎,我看人家引这个包的时候都会exclude一些依赖,我要不要也学着exclud…

    Java阅读全文

  3. Java运行期的版本控制方案

    前言前两天我们组负责的一个组件发生了一个与jar包版本号有关的线上bug,最近没啥事情,就顺便分析了一下。其实是个非常无脑的小bug:commons-lang3包中有一堆@since 3.5的新增方法,我们的组件依赖了3.5版本以上的一个包;业务方依赖了我们的这个组件,同时也直接依赖了一个3.5版本以下的包。在gradle打包的时候,由于老版本的是直接依赖,新版本的是间接依赖,直接依赖优先级高于间接依赖,因此最终采用的是老版本的包。这就导致在运行期调用新方法的时候会报NoSuchMethod的错…

    Java阅读全文

  4. 工作中遇到的一些坑(2)

    前言这个礼拜似乎是写了一礼拜的业务代码,没遇到什么太恶心的坑,就是理解业务逻辑费了点功夫。下个礼拜似乎又要开始撸组件撸网页了,现在想想感觉还是写写业务比较舒服,没事可以怼怼产品,给前端找找bug,写完还可以慢慢测;撸组件就比较无聊了,容易出大锅,而且还得求着人家用,用出问题还会被怼。。。不过好处大概就是以后跳槽面试的时候不容易被问死吧。。。知识&技巧常用@see和@link注释写代码的时候经常会遇到一些需要枚举的类型,比如“活动类型”、“数据来源”这类的。但是一般来讲我们不会直接用enu…

    Java阅读全文