公元前576年(楚共王十五年),即晋、楚弭兵之盟后的第四年,楚国司马公子侧积极主战,而大夫子襄(楚共王的弟弟公子贞)反对这一建议。子襄认为,楚国刚刚与晋国结盟,现在就要背弃盟约,恐怕不好。公子侧反驳道:“国家利益是最主要的,只要对我们有利,盟约算什么。”这时楚共王已25岁了,他长大了,年轻气盛的他,决定撕毁合约,对晋国发起攻击。
楚师先对晋、楚中间的小国开刀,侵郑伐卫,都是稍进即退,实际上是向中原表明自己的实力和争霸意图。
其实晋国的栾武、郤克等人也不甘心被盟约束缚,想继续争霸。而以范文子为首的一派,则主张维护盟约,继续和平友好。
公元前575年(楚共王十六年),郑国叛晋后,恃有楚国作后盾,兴师进攻宋国。前一年,宋国内乱,左师、大司寇等五人逃到楚国,楚国收留了他们。而这五人均为宋国大夫华元的政敌,这样,宋国与楚国的矛盾也加深了。
郑国的所作所为,直接违反了诸侯的盟约。对此,晋国自然不能坐视不管,于是下决心讨伐郑国。晋厉公以栾书等人统领晋军,并联合齐、鲁、卫等国一道出兵杀向郑国。
郑国向楚国求援,楚共王下令出兵救郑。当楚军路过申县时,司马公子侧见到了申叔时,问问他对这次战争的看法。申叔时说道:“德、义、礼、智、信是战争的手段,而现在楚国背信弃义,对内抛弃它的百姓,对外撕毁盟约,亵渎了神灵,言而无信。抛弃百姓是说春耕农忙时节,却派人打仗,妨碍了农时。这样,将士们不可能安心作战,又怎么能打胜仗呢?”主战的公子侧,本想得到取胜的策略,而不是被劝罢战。于是,他根本没听申叔时的这番言论。
这一年的五月三十日,晋、楚两军在郑地鄢陵相遇。历史上著名的鄢陵之战就此拉开了序幕。
这次晋、楚双方再也不用遮遮掩掩,都公开地大做战前准备。楚军强悍,兵器先进,士气高涨,且有从晋国投奔而来的太宰伯州犁做参谋、向导,这对楚军掌握晋军习性和活动规律大有裨益,因此令尹子重让其侍立在楚共王的身边,随时报告晋军的动向。但率领中军的元帅公子侧与率领左军的令尹子重是一对冤家对头,平时就相互敌对。公子侧勇而无谋,子重则谋而无勇。如果两人同舟共济,那将使得战争结局是另一面目,可惜这并非当时的事实。公子侧并不尊重子重,楚共王也不喜欢子重。让令尹子重听从司马公子侧的指挥,显然不合时宜,只能使矛盾更加尖锐。
而晋军一方,他们以执政的上卿栾书为元帅,统领中军,且有齐、鲁、卫诸国加盟。当然,楚师那边也有郑师和东夷的一些部族参加。其实,晋军也存在战与和的争执,这都不利于晋国的争霸。
清晨,楚军逼近晋军,列好了阵势,楚共王登上巢车,远眺晋军。这是他第一次亲临前线参加战争,觉得很新鲜。巢车是当时的先进军械,便于了解敌方的布局和动向。公子侧下令楚军快速推向晋军阵地,不给晋军以喘息的机会,或许就是通过巢车的观望而作出的正确决策。
楚共王一边观望,一边问伯州犁:“晋军有的向左驶去,有的向右驶去,他们这是在干什么?”伯州犁答道:“他们这是在召集军吏。”楚共王继续说道:“不错,我看到他们那些军吏都聚集到中军去了。”伯州犁接着说道:“他们要商议作战计划了。”楚共王又大声喊道:“他们搭帐篷了。”伯州犁忙解释道:“那是他们要进行战前祭祀与占卜了。”不一会儿,楚共王又说道:“他们开始拆卸帐篷了。”伯州犁答道:“他们快要下命令了。”楚共王接着说道:“我看见他们那里尘土飞扬、人来人往。”伯州犁答道:“那是他们在填水井、平土灶,以便就地布阵。”楚共王停顿了一会儿,接着说道:“他们上车了,不,他们又下车了,这是为什么?”伯州犁解释道:“他们正在听主将的号令,同时也在祈祷,祈求神灵的保佑。”
楚人征战也要祈祷与占卜,他们是分两次进行的,一是在出征前,由楚王举行,地点在宗庙;二是在战场上,即将作战时,由司马或并非司马的元帅举行。而晋人在战场完成祈祷与占卜,是一次进行的,这与楚人多少有些不同。
晋军此时未见盟军援兵抵达,加之营垒前方有泥沼,楚军逼近,兵车无法出营列阵,处于不利的地位。鉴于这种形势,晋军主帅栾书主张固守待援。然而新军统帅郤至则认为,楚军有诸多弱点,比如,楚军中军统帅公子侧和左军统帅子重关系不好;楚王的亲兵不精良;郑军列阵不整;随楚出征的蛮军不懂得阵法;楚军布阵于无月光之夜,实不吉利;楚军布阵后,阵中士卒喧哗不静,秩序混乱。如此杂乱无章的军队一旦投入战斗,必然是互相观望,没有斗志,我军若乘此机会发动进攻,一定能够把他们击败。因此他主张利用楚军的弱点,先发制人,主动进攻楚军。
晋厉公也在大夫苗贲皇的陪同下观看了楚军的阵势与动向。这位大夫曾是若敖氏族人,在若傲氏叛乱后,逃到晋国,因他对楚军熟悉,所以由他陪同视察敌情。他认为,楚军的精锐集中在中军,晋国可以先用优势兵力冲击他们的左、右军,然后再攻打他们的中军,这样晋国一定会取胜。晋厉公观望了强大的楚军后,心里确实没底,听了苗贲皇的分析,觉得有道理,也有了信心,于是下定决心作战,并进行了部署。
双方都下达了进攻命令,激战开始了,顿时擂鼓声、厮杀声直冲云天。晋军前面是一片沼泽地,战车不得不从两边绕行,晋厉公的戎车险些落入泥潭。按照苗贲皇的策略,晋军对楚左、右军进行了攻击。楚军抵挡不住,被逼到不便通行的地形上,陷入被动,阵势大乱,纷纷向颍水北岸方向败退。
晋军乘势猛攻楚中军。楚中军力量强大,本来可以抵住晋军的围攻,但事情往往不遂人愿。就在双方对战时,晋军中的一名神箭手张弓引箭,向楚共王射去。这个没有作战经历与经验的国君,根本不知躲闪,只听“嗖”的一声,楚共王应声而倒,嗷嗷惨叫,原来这支利箭射中了楚共王的眼睛。楚军一看国君受伤,有点混乱。晋军借机冲杀,一度有压倒楚中军的态势。楚共王虽未作过战,但毕竟年轻体壮,他忍痛命令神箭手养由基还击。养由基不慌不忙,拉开弓,搭上箭,一箭射死了晋军的那位神箭手,暂时稳住了楚军的阵势和军心。成语“百发百中”、“百步穿杨”,就是由养由基这一射箭手而来。
古代打仗,是讲究仁义礼仪的。即使敌我双方激战之时,也忘不了行礼施仪。晋军将领郤至冲锋陷阵,三次遇到楚共王,都下车脱盔向楚共王致敬,共王还让人送给他一张弓,表示慰问。郤至受弓后,随即退走,登车再战。
晋军还有一位将领曾经访问过楚国,对子重格外敬重。在作战中,他远远望见子重的旌旗,于是向晋厉公提出要上前为子重敬酒。晋厉公同意了,但他又一想作为国君的护卫者,自己是不能离开的,于是他派人代行前往向子重敬酒。子重接受了这一敬意,喝完酒后,让来的晋人先行回去,自己继续作战。
双方从清晨一直打到夜幕降临,楚军暂时失利,公子茂也成了晋军的俘虏。楚共王只得收兵,而晋军见天色已晚,也暂时停止了追击。
楚公子侧派人视察慰问伤员,调整布局,补充步兵和车兵,修理盔甲和武器,清理战车马匹,命令明天早晨鸡叫时开饭,准备继续决战。
晋军虽然一时取得主动态势,但明天的胜负还很难预料。为了鼓舞士气,稳定军心,苗贲皇通告全军,检查装备,补充兵员,喂好战马,修理战车,调整布列,饱餐一顿,明天决一死战。他不但大张声势地巡查部队的休整情况,还故意放走一个楚国俘虏,让其回去报信。
这个逃回的士兵向楚共王报告了晋军的动向和备战情况,楚共王很担心,便召集众将帅商量对策,然而迟迟不见司马公子侧前来。不一会儿,侍卫回来报告说,司马公子侧因病无法参加。楚共王很纳闷,白天还好好的,怎么一下子就病倒了。楚共王赶紧来到公子侧的营帐。刚到门口,一股刺鼻的酒气迎面而来,待楚共王走进一看,公子侧早已烂醉如泥,躺在床上,嘴里不停地说着“喝,继续喝,来,干杯。”
公子侧是楚国有名的嗜酒者,他常常以酒代水。今天战斗正在紧张地进行时,他有些口渴了,侍卫就把酒递给他,他连连摆手,让把酒拿走,他要喝水。一会儿,侍卫又把酒拿回来,他还是不喝。等第三次侍卫把酒递给他的时候,他再也无法控制自己,一口气把一坛酒喝了下去。停止攻击后,他勉强处理完军务,就倒头大睡了。
楚共王一看这情景,非常气愤,也很无奈,如果明天再打下去,将对楚军十分不利,说不准会遭受灭国之灾。于是,楚共王只好下令全军连夜撤退。等公子侧酒醒之后,才得知自己的失误及造成的严重后果,遂自杀谢罪。
第二天天刚刚亮,晋军就发现楚军已退走,便进入楚军大营,拿走楚军未来得及带走的东西,三天后凯旋。
鄢陵之战,晋军善察战机,巧妙指挥,击败同自己争霸中原的老对手——楚国,进一步巩固了自己在中原地区的优势地位。它是晋、楚争霸中的第三次,也是两国军队主力会战的最后一次,在历史上具有重要的意义。它标志着楚国对中原的争夺从此走向颓势,此后楚国在不断的争夺中一直居于劣势和被动,楚共王也未能在文治武功上取得更大的突破。晋国方面虽然借此得以重整霸业(即所谓的“晋悼公复霸”),但其对中原诸侯的控制力也逐渐减弱了。从这层意义上说,这场战争后,晋、楚两国都逐渐失去以武力争霸中原的强大势头,中原战场开始沉寂下来,鄢陵之战堪称为当时晋、楚争霸的最后一幕。
这次大战中,还有这么一种现象:双方阵营中都出现了对方叛臣的身影,因其对本国军队阵法的了解,二人对战争进程发挥了很大的作用,后人有诗评论这件事:
楚用州犁本晋良,晋用楚材是贲皇。
人才难得需珍重,莫把谋臣借外邦。
鄢陵之战,实际上是晋、楚势均力敌的一种对抗表现,如果就简单的战争结果来看,确实是晋国取胜了,楚国失败了。但如果从整个战争局势和对抗态势来看,其实两国是平手,很难分出胜负。往来读楚史者,多将楚师失利归咎于公子侧的醉酒,这似乎有点不公平。当然,大敌当前,醉酒行事,乃战争之大忌,他难辞其咎,但楚共王本来对这场战争就没有信心,他没有先父楚庄王的机智勇敢和豪气胆识,作为最高统治者的他,恐怕对此场战争的失利负有更加不可推卸的责任。
鄢陵之战后,楚国虽失败了,但元气没有受到损耗,仍有实力继续与晋争夺霸主。但国内连续发生的一系列事件,对其国力影响很大。右司马公子申贪图享乐,横行霸道,接受小国贿赂,侵夺令尹子重和左司马子辛的职权。公元前571年(楚共王二十年),楚共王处死了公子申。不久,子重病故,左司马子辛继任为令尹。子辛的跋扈甚于公子申,向陈国索贿太苛刻,以至于陈国背楚而向晋。公元前568年(楚共王二十三年),楚共王杀子辛,以子囊为令尹。
从形势上看,晋国显然又占了上风。还有一点有利于晋国的是,此时晋国国君发生了变化,公元前572年(楚共王十九年)新即位的晋悼公,虽然仅有14岁,但很有政治魄力。他选贤任能,大胆改革,整顿朝纲,发展生产,特别是在上、中、下三军之外,又建立了一支新军,还与周边的少数部族和亲,改善周边民族关系,因此晋国的国力日益增强。这些都为其后八年中的九次会盟诸侯、复霸中原创造了条件。诸侯国也纷纷倒向晋国,连晋、楚中间地带的陈、郑、卫等国也多背楚靠晋,其中最典型的要算郑国了。
鄢陵之战期间郑国并没有因楚国失利而背弃它。公元前574年(楚共王十七年),郑国出兵攻打晋国。晋联合周、齐、鲁、卫、宋等国伐郑。楚令尹子重率兵救郑,联军知难而退。这年冬,晋国又率领联军伐郑,楚国派公子申前往支援,联军又望风而退。这时,郑国对楚国仍是服从的,维持着盟友关系。
没过几年,郑国大夫有点忘乎所以,居然派兵袭击楚国的附庸蔡国。公元前566年(楚共王二十五年),郑相子驷杀了郑僖公,执掌朝政大权。第二年,为了转移国内对其的仇恨,他派遣子国与子耳率领军队攻打蔡国。侵扰蔡国,就等于对楚国发起挑衅。同年冬天,楚国派令尹子囊率兵伐郑。
当时郑国内部有两种意见:一种是主张等待晋国救援,与楚国相抗争;另一种意见则是要顺从楚国。两种意见协调后,郑国决定暂与楚国结盟,等把楚军敷衍走后,再与晋国解释、和好。这是一种唯强是从的战略对策,结果让晋国很生气,第三年冬天,晋国率领联军进攻郑国。郑又敷衍晋国,打算与晋结盟。当联军准备退兵时,楚国令尹子囊率军前来救援郑国。郑又与楚结盟。晋军觉得自己像是在被郑国玩弄,再次恼火,对郑国北部边境进行掠夺,随后退兵。楚国也跟着班师回朝了。