终于,我感受到了IDEA的强大
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的强大的更多相关文章
- Python实现字符的冒泡排序——说实话,两个数兑换的方法震惊了我,一天比一天感受到了Python的强大
import random M= lettList=[] for i in range(M): lettList.append(chr(random.randrange(,))) for lett i ...
- 作业3-个人项目<词频统计>
上了一天的课,现在终于可以静下来更新我的博客了. 越来越发现,写博客是一种享受.来看看这次小林老师的“作战任务”. 词频统计 单词: 包含有4个或4个以上的字 ...
- css befroe after 尾类技术器
CSS counter计数器(content目录序号自动递增)详解 这篇文章发布于 2014年08月26日,星期二,15:54,归类于 css相关. 阅读 44148 次, 今日 11 次 by zh ...
- Alpha 冲刺 (6/10
Alpha 冲刺 (6/10) 队名:第三视角 组长博客链接 本次作业链接 团队部分 团队燃尽图 工作情况汇报 张扬(组长) 过去两天完成了哪些任务: 文字/口头描述: 1.组织会议 2.帮助队员解决 ...
- CSS计数器(序列数字字符自动递增)详解———张鑫旭
by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=4303 一.挖坟不可耻 ...
- 福大软工1816:Alpha(6/10)
Alpha 冲刺 (6/10) 队名:第三视角 组长博客链接 本次作业链接 团队部分 团队燃尽图 工作情况汇报 张扬(组长) 过去两天完成了哪些任务: 文字/口头描述: 1.组织会议 2.帮助队员解决 ...
- 安全测试===sqlmap(肆)转载
十八.杂项 1.使用简写 参数:-z 有些参数组合是被经常用到的,如“--batch --random-agent --ignore-proxy --technique=BEU”,这样写一大串很不好看 ...
- 某科学的PID算法学习笔记
最近,在某社团的要求下,自学了PID算法.学完后,深切地感受到PID算法之强大.PID算法应用广泛,比如加热器.平衡车.无人机等等,是自动控制理论中比较容易理解但十分重要的算法. 下面是博主学习过程中 ...
- sqlmap中文手册
Sqlmap中文手册 -Darren制作 零.前言 Sqlmap是十分著名的.自动化的SQL注入工具.为了较为系统地学习Sqlmap,我决定翻译一遍Sqlmap的用户手册,于是便有了此文.由于我英语 ...
随机推荐
- vue--组件性别选择器和仿百度搜索栏
目录 实现原理 性别选择器 仿百度搜索栏 实现原理 主要参考vue官网上的自定义事件,父组件v-bind给子组件传参数,子组件利用props来接受父组件那边传过来的参数.我们还会遇到一个问题,怎么实时 ...
- CSS Grid网格布局全攻略
CSS Grid网格布局全攻略 所有奇技淫巧都只在方寸之间. 几乎从我们踏入前端开发这个领域开始,就不停地接触不同的布局技术.从常见的浮动到表格布局,再到如今大行其道的flex布局,css布局技术一直 ...
- py+selenium 直接给日期赋值,控制台调试报错【已解决】
目标:给带日期控件的输入框赋值. 百度去搜索让你各种去只读readonly属性,再send_keys 方法: 其实既然可以去除readonly属性,那就可以直接给属性赋值,将两行代码缩为一行. dri ...
- 为git伸冤(使用git中可能会踩的一些坑)
窦娥被冤,六月飞霜.今天我两次遇到git被冤枉的情况,要是其它人也遇到这种情况导致git使用量缩小,那也要六月飞霜了. git第一次被冤枉是同事以为git的版本管理有问题.事情是这样的,同事提交新版本 ...
- Jira 使用手册
Date Revision version Description author 2018-06-14 V1.0.0 Isaac Zhang 2018-06-22 V1.0.1 1,添加git提交操作 ...
- BAT的人都是怎么学习的
不知道你发现没,在技术领域走在前列的人,基本都符合一个条件:保持对新技术的敏感度,还能定期更新自己的技能储备. 要做到这一点,最高效的办法就是直接跟 BAT 等一线大厂取经.说白了,平台足够大,就有更 ...
- 解决 mysql多表联合查询时出现的分页问题
mysql一对多分页问题 部门表:tbl_dept 员工表:tbl_emp 数据库sql文件 CREATE DATABASE /*!32312 IF NOT EXISTS*/`ssm-crud` /* ...
- python课堂整理20----生产者消费者模型
一.实现功能:店铺生产包子,消费者来吃 import time def producter(): ret = [] for i in range(10): time.sleep(0.1) ret.ap ...
- 逆向MFC程序
目录 @ 1 MFC执行流程 1.1 环境支持 1.2 分析 1.3 实践探索 1.3.1 创建一个MFC程序 1.3.2 下关键断点并调试 1.4 转向MFC库源文件中观测 2 逆向 2.1 特征码 ...
- golang文档、中文、学习文档
Golang中文文档地址 http://zh-golang.appspot.com/doc/ Golang非英文文档地址: https://github.com/golang/go/wiki/NonE ...