建康府上元县丞。隆兴元年进士，为国学博士。奏论州县受纳及鬻爵之弊，除着作佐郎兼学士院权直。宋孝宗时，历任侍御史、中书舍人、给事中、刑部尚书，奏论都切中时事。宋光宗时，历任参知政事、知枢密院事。绍熙四年三月，拜左丞相，次年正月，除观文殿大学士，知建康府。宋宁宗即位，判绍兴府，后来判福州，以少保致仕。南宋庆元六年（1200年）卒。