西庇阿對迦太基方麵的動向了如指掌。但是,這一年,他並沒有急於離開冬營地塔拉戈納,就好像他故意要給敵人足夠的時間,去集合盡可能多的兵力。
西庇阿首先去了卡塔赫納,在那裏稍作停留,然後才進軍伊利帕,與嚴陣以待的敵人交戰。西庇阿率領軍隊離開卡塔赫納後,先是進入內陸,穿過伊利帕平原。這裏有一條流向大海的河流,西庇阿來到上遊,沿河南下。選擇這樣的路線,目的是為了向地處內陸、尚持觀望態度的西班牙原住民展示羅馬軍隊的軍威。當西班牙原住民意識到獲勝的必將是羅馬人時,他們紛紛加入羅馬的陣營當中。這樣一來,羅馬軍隊增加到了擁有4.5萬名步兵和3000名騎兵。與漢尼拔一樣,為了更加有效地利用主要戰鬥力,西庇阿同樣需要輔助的戰鬥力。
盡管如此,4.8萬人要麵對的是7.4萬人。除了勇敢戰鬥,即將迎來29歲的西庇阿還需要考慮更多的事情。
西庇阿沒有在距離敵人較近的地方建營地。他繞了很大一個圈,繞到南側後才停止行軍,築建堅固的營地。之所以把營地建在南側,是因為這裏有非常適合建營的小山丘,同時切斷了敵人向伊利帕以南的海港城市加的斯逃跑的退路。
羅馬軍隊和迦太基軍隊的營地分別建在兩座小山丘上,它們分別位於伊利帕平原的南端和北側,中間是開闊的平原。戰鬥就在這裏展開。
迦太基軍隊迫不及待地進軍平原地帶,首先排兵布陣。西庇阿也命令全軍馬上下山布陣。
布陣結束後,迦太基方麵卻沒有發起進攻。西庇阿也未下令進攻。兩軍對峙中,太陽開始西斜。好像經過一番激戰似的,兩軍疲憊至極,分別回到各自的營地。
第二天又這樣過去了。第三天同樣是在對峙中結束。迦太基方麵沒有采取行動是因為總指揮官遲遲下不了決心,西庇阿沒有采取行動是因為他早已心中有數。
每天在戰場上布完陣,等到太陽下山,回到營地。這樣的日子周而複始,還在繼續。漸漸地,迦太基軍隊出現在戰場上的時間越來越晚。終於,在太陽出來前,戰場上再也看不見迦太基士兵的身影。
這天夜裏,西庇阿第一次向全軍下達命令。他命令所有人明天天亮前吃好早飯,披掛好裝備,作好戰鬥準備。
第二天一早,迦太基軍隊看到密密麻麻等候在戰場上的羅馬軍隊,大驚失色。在指揮官的催促下,士兵們未吃早餐,匆匆出了營地。因時間太緊,來不及重新布陣,所以,除了象隊來不及到最前麵,隻好部署在兩翼外,其餘陣型與之前完全一樣。但是,羅馬軍隊的陣型變了。
中央稍稍往後是作為輔助戰鬥力的西班牙士兵,羅馬重裝步兵作為主要戰鬥力分列左右兩翼,加強兩側的防守來對抗西班牙兵團。
兩支軍隊開始向前,相距800米的時候,雙方同時下達了進攻的命令。
迦太基方麵全線向羅馬軍隊發起正麵進攻。但是,羅馬軍隊發起正麵進攻的隻是中央的西班牙步兵團。分列左右兩側的重裝步兵團陣型突然斜向移動,從斜側麵開始攻打敵人的兩翼步兵。這就是西庇阿的戰術。他讓自己最強的戰鬥力,從既不利於守也不利於攻的斜側麵,攻打敵軍最薄弱的部分。