晋成公四年,即公元前六零三年,春,晋国、卫国共同出兵攻打陈国,这是因为陈国向楚国顺服。
秋,赤狄入侵晋国,包围怀地(晋地,今河南武陟西南),到达邢丘(晋地,今河南温县东)。
晋成公因此想要讨伐赤狄,中行桓子(荀林父,因曾担任中行将,以官为氏)却表示,让他们危害他们的民众,来使他们的恶行满溢,就可以将他们彻底消灭了。《周书》说‘殪戎殷(彻底消灭大国殷商)’说的就是这个意思。
晋成公听从了他的意见。
冬,楚国人攻打郑国,郑襄公逃到晋国,直到郑国讲和,楚国人才回去。
晋成公五年,即公元前六零二年,春,鲁国与卫国结盟,同时商议与晋国会盟。
赤狄攻打晋国,到达向阴,抢先收走了当地的谷子。
郑国与晋国讲和。
冬,晋成公与鲁宣公、宋文公、卫成公、郑襄公、曹文公在黑壤会盟,王叔桓公与会,商讨如何处理那些不顺服晋国的诸侯。
晋成公即位的时候,鲁宣公没有前来朝见,也没有派使者前来聘问。于是黑壤之盟,诸侯结盟之时,晋国人没有让鲁宣公参加。甚至给晋国人送了贿赂之后,才回到鲁国。
晋成公六年,即公元前六零一年,春,白狄与晋国讲和。
夏,白狄与晋国一起攻打晋国。
晋国人抓住了秦国的一个间谍,将他杀死在了绛城的街市上,可六天之后,这个人却复生了。
晋国执政胥克有心志惑乱之症,就由郤缺代替他执政。
秋,晋国废除了胥克的职位,由赵朔担任下军佐。
冬,陈国与晋国讲和。
楚国的军队便进攻陈国,直到陈国求和才离开。
这一年,晋国赵盾去世。
楚国攻打舒廖,舒廖灭亡。
晋成公七年,即公元前六零零年,秋,晋成公、宋文公、卫成公、郑襄公、曹文公在扈地会见,商讨如何处理那些不顺服晋国的诸侯。
陈灵公没有参加,晋国荀林父便率领诸侯联军攻打陈国。
晋成公在扈地去世,荀林父才从陈国撤兵。
楚庄王率军攻打郑国,晋郤缺率军救援郑国。
郑国国君郑襄公在柳棼(郑地)率军击败楚庄王。
晋成公去世之后,他的的儿子公子据继位,是为晋景公。