今山东巨野县）人。靖康末年入蜀避乱，宋高宗绍兴二年举进士第，绍兴十一年至十七年（1141年－1147年）任四川转运使井度的从官。自幼喜读群书，初为四川总领财赋司，办事有才干。
生平.出身世宦家族，七世祖晁迥官至礼部尚书，再从父晁补之，从父晁说之，均为着名学者。晁沖之之子，金人南侵，举家避难四川，定居嘉定（今乐山），家藏书，在战乱中损失殆尽。绍兴二年（1132年），登进士第。公武后来成为四川转运使井度的属官，绍兴十七年知恭州（今重庆），又知荣州（今四川荣县）、合州（今重庆合川）、泸州