郑国的使者星夜抵达楚国郢都,姚句耳作为副手,一路紧盯着楚军的动向。楚共王接到求援信,即刻下令出兵:司马子反率中军,令尹子重领左军,右尹子辛统右军,三军沿着汉水北上,途经申邑时,子反特意入城拜见申叔时。彼时申叔时正在园中种稻,见子反前来,放下农具叹息:“司马此次出征,可知胜负早已注定?”
子反愕然,申叔时便引他至书房,指着案上的《周书》道:“战争的根本,在于德行、刑法、敬顺、道义、礼仪、信用。昔日武王伐纣,六者兼备,故能一举成功。如今楚国呢?对内横征暴敛,百姓苦不堪言;对外背弃盟约,诸侯皆有怨怼;春耕时节强行征兵,误了农时,百姓连温饱都难以为继——这样的军队,怎能打胜仗?”子反面色凝重,申叔时又道:“我观楚军士兵,个个面带忧色,谁肯为君王卖命?司马好自为之,老朽恐难再与你相见。”
姚句耳先于楚军回国,子驷在新郑城外迎接,急切追问楚军情况。姚句耳摇头道:“楚军行军过快,途经险地时队伍散乱,前锋与后军相差数里。过快则思虑不周,散乱则难以成阵,这样的军队,恐怕靠不住啊!”子驷听后,心中愈发不安,只得下令加固城墙,准备死守。
五月末,晋军渡过黄河,探子来报楚军已过申邑,正往郑国赶来。范文子再次请求撤军:“楚军势大,我军若与之交战,胜负难料。不如暂且撤退,待诸侯援军到齐,再作打算。”栾书却怒斥:“我军已渡过黄河,此时撤退,必遭楚军追击,沦为诸侯笑柄!”六月初,晋楚两军在鄢陵相遇,连绵的军营从鄢陵城外一直延伸到洧水岸边,两国的旌旗在风中猎猎作响,大战一触即发。
范文子仍不愿开战,郤至却在军帐中慷慨陈词:“韩地之战,惠公被俘;箕地之战,先轸战死;邲地之战,荀林父大败——这三次耻辱,我晋国将士岂能忘记?今日若避楚不战,便是又添一辱!”范文子反驳:“先君作战,是因秦、狄、齐、楚皆强,若不战,子孙必弱。如今秦、狄、齐已服,只剩楚国一国,不如留着楚国,让它成为我军的警戒,免得内部生乱。”两人争执不下,栾书最终拍板:“明日交战,退后者斩!”
甲午晦日,天还未亮,楚军便迫近晋军营垒列阵,密密麻麻的士兵如潮水般涌来,晋军军吏见状,纷纷面露忧色——营垒前有一道深沟,若楚军发动进攻,晋军难以出营列阵。范匄见状,快步上前道:“可填塞营中水井,铲平灶头,在营内列阵,再拓宽行列间距,这样既能抵御楚军进攻,又能从容出兵。”范文子见状,拿起戈赶他:“国家存亡,自有天意,你一个孩童懂什么!”
栾书沉思片刻,道:“楚军远道而来,士气虽盛却浮躁,我军可加固营垒,坚守不出,不出三日,楚军必因粮草不足而撤退,届时我军再追击,必能大胜。”郤至却摇头:“楚军有六处破绽,此时正是进攻的良机!子反与子重不和,将帅离心;楚王的亲兵皆是老兵,战力衰退;郑军列阵散乱,不堪一击;蛮人部队毫无纪律,难以指挥;楚军选择晦日列阵,犯了上天忌讳;士兵在阵中喧哗,军心不稳。如此破绽百出,我军若不进攻,更待何时?”
楚共王登上巢车,居高临下地观察晋军动静,太宰伯州犁侍立在旁,为他解说晋军的动向。“晋军战车左右驰骋,是在召集军吏。”“军吏聚集中军,是在商议战术。”“帐幕张开,是在为先君占卜。”“帐幕撤去,是要发布命令了。”“人声喧闹,尘土飞扬,是在填塞水井、铲平灶头,准备列阵。”“将士们登上战车,又手持兵器下车,是在聆听军令、祈祷胜利。”伯州犁一一解说,楚共王的眉头却愈发紧锁——晋军的动作有条不紊,显然早有准备。
另一边,苗贲皇侍立在晋厉公身旁,也将楚军的情况一一禀报:“楚军的精锐,全在中军的王族部队,左右两军皆是弱旅。若我军分兵攻打左右两军,再集中主力进攻中军,必能击破楚军。”晋厉公仍有疑虑,便令太史占筮,太史解读卦象道:“此乃‘复’卦,卦辞云‘南方国家失势,箭射国王,中其眸子’。楚国在南,此卦预示楚军必败,楚王必伤!”晋厉公听后,终于下定决心:“明日交战,全军出击!”
晋军依计行事,填塞水井、铲平灶头,在营内列阵完毕。清晨时分,晋军打开营门,向楚军发起进攻。营垒前的深沟成了阻碍,晋军士兵只得或左或右绕沟前进,队伍一时有些散乱。步毅驾驭着晋厉公的战车,栾鍼任车右,刚绕过深沟,车轮却陷入了泥坑,战车动弹不得。栾书见状,忙驾车前来,想让厉公换乘自己的战车。栾鍼却大喝:“栾书退后!国家大事,岂能由你一人做主?你若让君王换乘,便是侵犯职权、丢弃职责、离开岗位,三重罪名,你担当得起吗?”说罢,栾鍼跳下车,与士兵们一同抬起战车,将其拖出了泥坑。
交战前一日,楚军阵营中发生了一件事:潘尪之子潘党与养由基比试射箭,两人各穿七层铠甲,一箭射出,皆穿透铠甲,箭头钉在远处的木柱上。两人拿着铠甲去见楚共王,得意道:“君王有我二人,