文帝三年(前177年),济北(今山东西北部)王兴居趁文帝去太原之机,准备发兵西袭荥阳(今河南荥阳市东北),随即兵败自杀。他谋反的原因是自以为诛诸吕有功,文帝封他的济北国地方太小,心怀不满。
同年,淮南王长入朝,他自以为是皇帝的弟弟,关系最亲,平时不守法度,文帝一次次予以宽恕,他却更加肆无忌惮。在与文帝去打猎时,他公然坐上皇帝的车子,不时称文帝为“大兄”。刘长身强力壮,能把鼎举起。他身带一把铜锥去见辟阳侯审食其,见面后就一锥砸去,令随从将他杀了。原来20年前刘邦路过赵国时,赵王派一位美人侍候。刘邦走后,赵王发现美人已怀孕,就将她送到宫外。不久刘邦下令逮捕赵王全家,美人亦未幸免,被拘留在河内(今河南武陟县西南)狱中。美人的弟弟赵兼通过审食其报告吕后,吕后因忌妒不愿告诉刘邦,审食其不敢坚持。美人生下刘长后,见仍未得到承认。忿恨自杀。刘长认为审食其没有尽职力争,对其母的死负有责任,就擅自杀了他。当朝大臣在光天化日下被亲王所杀,引起朝野震惊,但刘长声称是“为天下诛贼,报母之仇”,文帝只得免予处罚。当时,上至薄太后,下至太子、大臣都害怕刘长,他归国后更加骄横不法,甚至不用汉朝法令,不顾规定的礼仪。文帝亲自下诏责备,仍然无效,就让自己的舅父、将军薄昭以长辈的身份给他写了一封措词严厉而恳切的信,劝他改过自新。刘长接信后很不愉快,在文帝六年与人密谋策划,准备用40辆车装载武器,在长安西北的谷口作乱,还派人与匈奴、闽越联系。阴谋败露后,刘长的王位被废,遣送蜀郡严道(今四川荥经县)。刘长在车中绝食自杀,沿途接送的官员一直不敢打开车门,直到雍县(今陕西凤翔县南)才被发现。
汉景帝针对诸侯王对朝廷的威胁,贾谊向文帝上《治安策》,分析了当时面临的形势,提出了一些对策。他指出:在对付异姓王时朝廷幸而获得胜利,但朝廷与诸侯王矛盾的性质并没有改变,同姓诸侯王与朝廷的对抗已见征兆,发展下去必然会是同样结果。但是到目前还没有出现大的问题,原因在于大国的王大多还没有成年,朝廷为他们配备的傅(国王的老师)、相(王国的行政长官)能够掌权。几年以后,诸侯王都成年了,血气方刚,朝廷派去的傅、相都到了退休年龄,王国在丞、尉(县一级行政官员)以上都用上自己的人,那时与济北王、淮南王还会有什么不同?同姓王势力膨胀,朝廷难以控制,“一胫之大几如腰,一指之大几如股”(小腿粗得像腰,手指大得像大腿),平时就无法屈伸,再有这样一二个指头乱动就更受不了了。今天再不治疗,就会成为不治之症,到时纵然有扁鹊再世,也会无能为力。从异姓王的情况分析,“大抵强者先反”,而长沙王“功少而最完,势疏而最忠”(功劳最小而存在时间最长,关系最疏远却对朝廷最忠诚),这并不仅仅是他的性情与别人不同,主要是形势所造成的。所以要使诸侯忠诚,必须造成像长沙王那样的形势。他建议,“众建诸侯而少其力”(多设置诸侯国来减弱他们的实力),实力弱了就容易使他们遵守法制,国小了就没有邪心。这样就能使全国的形势像身体指挥手臂,手臂运动手指一样,没有不服从的。诸侯们不敢有异心,争着朝见听命于天子。
贾谊的建议在生前尚未付诸实现。到文帝十六年(前164年),齐文王死,无子,文帝追思贾谊的意见,乘机将齐国一分为六,分封为齐、济北、淄川、胶东、胶西、济南六国,将剩下的琅琊郡收归朝廷;又将淮南王喜改封为城阳王,将淮南国一分为三,立刘长三子为淮南、衡山、庐江王。原来两国分成了九国,辖境自然缩小,力量也必定分散。从此,“众建诸侯而少其力”成为汉朝处置诸侯的一项基本政策。
但这个方法也有局限,分诸侯国得有借口,如果诸侯王健在就难以实施,特别是对诸侯中资格最老、实力最强、威胁最大的吴王奈何不得。所以,太子家令(太子的总管兼生活秘书)晁错几次上书,建议应对吴国削地,这无疑会激化朝廷与吴国的矛盾,所以文帝没有采纳。
景帝初,吴王更加飞扬跋扈,已担任御史大夫的晁错向景帝提议实行削藩,因为“今削之亦反,不削亦反。削之,其反亟(迅速),祸小;不削之,其反迟,祸大”。曾经误杀吴太子的景帝自然明白,在他当皇帝后,这位吴王伯父必定会越来越难对付。因而在三年(前154年)冬削了楚王的东海郡、赵王的常山郡,胶西王则削了六个县。下面自然要轮到吴国了,吴王濞联合楚、胶西等国准备采取行动。正在此时,朝廷削吴国会稽、豫章二郡的诏书到达,吴王就宣布起兵,杀掉了由朝廷派来的二千石(郡级)以下的官员。胶西、胶东、淄川、济南、楚、赵六国一齐响应,发兵西进。赵王还秘密派遣使者,联络匈奴出兵。齐王本来已参加谋反,因后悔而退出,在临淄城(今山东淄博市西北)固守。济北王也是同谋,但损坏的城墙来不及修好,被手下的一位郎中令挟持,不许他发兵。吴王下令全国总动员:“寡人已经六十二岁了,亲自指挥。我小儿子十六岁,带头当兵。国内年龄在六十二岁与十六岁之间的全部征召入伍。”征集到二十余万人,东越和闽越也发兵随从。
正月甲子(当时以十月为岁首,正月为每年第四个月),吴军从广陵(今江苏扬州市西北)西渡淮河,与楚军会合。吴王向诸侯发布文告,号召各国一起举兵诛“贼臣晁错”,并公然声称:“寡人节衣食用,积金钱,修兵革,聚粮食,夜以继日,三十余年矣,凡皆为此(都是为了这一目的)。”还定下赏格,各国凡能斩捕汉朝大小武将文官,都可按规定级别领赏。“寡人金钱在天下者往往而有,非必取于吴(不必都回吴国拿),诸王日夜用之不能尽,有当赐者告寡人,寡人且往遣之。”吴、楚合兵进攻忠于朝廷的梁国(景帝之弟),攻破棘壁(在今河南拓城县西北),杀数万人。
消息传到长安,朝廷震动。景帝命太尉周亚夫率36将东进迎战吴军,郦寄击赵军,栾布击齐;拜窦婴为大将军,屯守荥阳(今河南荥阳市东北),策应前方。景帝一时乱了方寸,原吴王相袁盎献计,说根据他得到的情报,吴楚起兵的目的只是为了杀晁错,恢复削地。现在只要杀晁错,派使者赦免七国,恢复它们的旧地,就可兵不血刃,结束事变。景帝同意,封他为太常(主管宗庙祭祀的官员),派他秘密出使吴国。十几天后,丞相青翟等就照事先安排弹劾晁错,称他大逆不道,要求处以腰斩,父母妻子兄弟不论老少全部处死。晁错还蒙在鼓里,被召来后立即被押赴东市,穿着朝服就被斩了。其实晁错不是不知道上“削藩策”将付出的代价,听到他向景帝建议削藩的消息后,他父亲就从故乡颍川赶来,对他说明利害关系。晁错坚定地说:“我一定要这样做。不如此,天子不尊,宗庙不安。”父亲说:“刘氏安了,而晁氏危了。我不忍心受到牵连,先走一步了。”就喝毒药自杀了。晁错没有动摇,不过他绝不会想到,景帝会如此轻易地将他抛弃。
袁盎到达吴国时,吴楚联军已进攻梁国的防御工事。听说袁盎要让他拜受诏书,刘濞笑道:“我已经当了东帝,还拜谁?”将他扣在军中,根本不见,继续进攻。
校尉邓公从前线回长安,向景帝汇报军事。景帝问道:“听到晁错被杀,吴楚收兵了吗?”邓公说:“吴王谋反已经几十年了,因为削地而发怒,以杀晁错为名,目的并不在晁错。我恐怕天下之士从此闭紧嘴巴不再说话了。”景帝问是何原因,邓公说:“晁错怕诸侯强大不可制服,所以建议削地,以巩固朝廷,是万世之利。计划刚实行,自己就被杀了,对内使忠臣不敢再说话,对外正好为诸侯报了仇。我以为陛下不该如此。”景帝追悔莫及。