Java开发者千千万,开发者用的开发工具目前主流却只有2种:eclipse和IDEA,我入行以来一直用的eclipse,听过IDEA很好很强大,但是也只是处于听说的阶段,
基本没用过,自然没怎么体会过。直到今天,我解决了一个实际问题(注意,这不是一篇安利IDEA的文章,而是介绍一个实际问题解决的过程)。

缘起

公司的项目都是微服务的,前后端完全分离(只是代码分离,但是开发人员目前不分离),我负责其中2个核心工程,其中一个是刚接手的,就是它让我遇到了一个问题。
一般我开发的时候都是先在本地将前后端调试通过后再提交代码到git上,但是这个工程不知道为什么通过jetty:run 启动后总是不能正常访问,通过postman也不行,一直返回503

山重水复疑无路

这个问题,我到网上查了好久,很多人都说是后端服务问题,服务没起来,我也这样怀疑过,但是从console打印的log来看是正常的,把整个console从底往上翻都没有发现报错的堆栈信息,但是把代码发到环境上就是ok的,看来还是本地的问题,但没有报错,一时半会儿也查不出来问题在哪儿。

没办法,只能把后端代码写好后,肉眼调试看看有没有问题,没发现问题的话就把代码发到测试环境上,然后用postman或本地的前段代码访问测试环境的接口。

这样做的缺点很明显,就是如果有问题的话,要重新提交代码然后重新发布环境,比较麻烦,只能临时这么干,不是长久之计。

柳暗花明又一村

记得第一次提交这个工程的代码的时候,eclipse特有的.project等文件都是之前没有加入到ignore列表的。

基于这个,我猜想原来的开发人员会不会用的是IDEA?他之前是怎么调试的?难道没报错吗?为了寻找答案,我把下载了很久但是没怎么用过的IDEA翻了出来,导入工程并启动该工程。发现报错了!!!它报错了!!!太好了,报错了,终于找到503的问题点了。

对症下药,药到病除
根据报错,很显然是配置文件中少了一个配置项目,导致报错,使本地服务没有完全启动,因此报503错误。于是我翻了下环境上的配置,copy到本地,再启动,然后访问,正常响应,问题解决。

完美!!!

打破砂锅问到底
没道理啊!按说eclipse启动错误应该会有堆栈信息的,为什么我再console里面看不到呢?
度娘一把,最后得出结论堆栈被其他的信息冲掉了,因为eclipse默认情况下console显示的日志行数有限制。

要解决问题只需把这个限制取消就行了。
于是乎,我把它取消掉然后把那个配置再删掉,重新启动eclipse,在长长的日志里面我发现了堆栈信息。

没错,就是它,那个我找了很久都没有找到的它。
众里寻他千百度,蓦然回首,“堆栈”却在灯火阑珊处!!!

收官
从这个问题来看,IDEA确实比eclipse更懂程序员,IDEA把报错直接报在了启动结束的位置,而eclipse却在报错之后又执行了很久并且打印了很多log信息,在一定程度上影响了我排查问题。
当然,并不是说IDEA就一定比eclipse好,我也用了很多年的eclipse了,挺好的。总体上,各有千秋吧。
以上是我的个人观点,eclipse铁杆粉们,求放过哦

终于,我感受到了IDEA的强大的更多相关文章

  1. Python实现字符的冒泡排序——说实话,两个数兑换的方法震惊了我,一天比一天感受到了Python的强大

    import random M= lettList=[] for i in range(M): lettList.append(chr(random.randrange(,))) for lett i ...

  2. 作业3-个人项目<词频统计>

    上了一天的课,现在终于可以静下来更新我的博客了.       越来越发现,写博客是一种享受.来看看这次小林老师的“作战任务”.                词频统计 单词: 包含有4个或4个以上的字 ...

  3. css befroe after 尾类技术器

    CSS counter计数器(content目录序号自动递增)详解 这篇文章发布于 2014年08月26日,星期二,15:54,归类于 css相关. 阅读 44148 次, 今日 11 次 by zh ...

  4. Alpha 冲刺 (6/10

    Alpha 冲刺 (6/10) 队名:第三视角 组长博客链接 本次作业链接 团队部分 团队燃尽图 工作情况汇报 张扬(组长) 过去两天完成了哪些任务: 文字/口头描述: 1.组织会议 2.帮助队员解决 ...

  5. CSS计数器(序列数字字符自动递增)详解———张鑫旭

    by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=4303 一.挖坟不可耻 ...

  6. 福大软工1816:Alpha(6/10)

    Alpha 冲刺 (6/10) 队名:第三视角 组长博客链接 本次作业链接 团队部分 团队燃尽图 工作情况汇报 张扬(组长) 过去两天完成了哪些任务: 文字/口头描述: 1.组织会议 2.帮助队员解决 ...

  7. 安全测试===sqlmap(肆)转载

    十八.杂项 1.使用简写 参数:-z 有些参数组合是被经常用到的,如“--batch --random-agent --ignore-proxy --technique=BEU”,这样写一大串很不好看 ...

  8. 某科学的PID算法学习笔记

    最近,在某社团的要求下,自学了PID算法.学完后,深切地感受到PID算法之强大.PID算法应用广泛,比如加热器.平衡车.无人机等等,是自动控制理论中比较容易理解但十分重要的算法. 下面是博主学习过程中 ...

  9. sqlmap中文手册

    Sqlmap中文手册  -Darren制作 零.前言 Sqlmap是十分著名的.自动化的SQL注入工具.为了较为系统地学习Sqlmap,我决定翻译一遍Sqlmap的用户手册,于是便有了此文.由于我英语 ...

随机推荐

  1. 微信小程序开发--组件(5)

    一.editor 富文本编辑器,可以对图片.文字进行编辑. 编辑器导出内容支持带标签的 html和纯文本的 text,编辑器内部采用 delta 格式进行存储. 通过setContents接口设置内容 ...

  2. 整型,布尔值,字符串详解,for语句 练习

    2019 年 7 月 8 日 1.将今天的课上的代码敲一遍,然后整理笔记 已完成 2.有变量name = "aleX leNb" 完成如下操作: 移除 name 变量对应的值两边的 ...

  3. Python解释器安装教程以及环境变量配置 以及 pycharm的安装与激活

    计算机的组成 主板:人的骨架,用于拓展设备 CPU:人的大脑,用于计算和逻辑处理 硬盘:存储数据(永久储存),比如电脑上的 C盘,D盘 内存:临时记忆(断电即消失) 操作系统:XP win7 win1 ...

  4. 个人永久性免费-Excel催化剂功能第49波-标准数据结构表转报表样式结果

    中国的企业信息化,已经过去了20年,企业里也产生了大量的数据,IT技术的信息化管理辅助企业经营管理也已经得到广泛地认同,现在就连一个小卖部都可以有收银系统这样的信息化管理介入.但同时也有一个很现实的问 ...

  5. 个人永久性免费-Excel催化剂功能第48波-拆分工作薄内工作表,堪称Excel界的单反

    一个工作薄有多个相同类型的工作表,然后想通过批量操作,把每个工作表都另存为一个工作薄文件,这个批量拆分工作薄,绝大多数插件都有此功能,就如懂点VBA的高级用户也常常有点不屑于用插件来完成,自己写向行V ...

  6. TensorFlow笔记-模型的保存,恢复,实现线性回归

    模型的保存 tf.train.Saver(var_list=None,max_to_keep=5) •var_list:指定将要保存和还原的变量.它可以作为一个 dict或一个列表传递. •max_t ...

  7. [leetcode] 17. Letter Combinations of a Phone Number (medium)

    递归DFS class Solution { Map<Character, String> mapping = new HashMap<>(); public List< ...

  8. [leetcode] 134. Gas Station (medium)

    原题 题意: 过一个循环的加油站,每个加油站可以加一定数量的油,走到下一个加油站需要消耗一定数量的油,判断能否走一圈. 思路: 一开始思路就是遍历一圈,最直接的思路. class Solution { ...

  9. 【区分】Typescript 中 interface 和 type

    在接触 ts 相关代码的过程中,总能看到 interface 和 type 的身影.只记得,曾经遇到 type 时不懂查阅过,记得他们很像,相同的功能用哪一个都可以实现.但最近总看到他们,就想深入的了 ...

  10. cookbook_数据结构和算法

    1.1将数据分解为单独的变量 list_a = [1,2,3,4,5,6,7,8,9] a,b,c,d,e,f,g,h,i = list_a print(a,b,c,d,e,f,g,h,i) #使用相 ...