The kernel of ProB is written in Prolog, the B parser is developed in Java using SableCC.
There is a comprehensive Java API available (also known as ProB 2.0).
ProB Prolog Source Code
Getting Involved (includes details about getting and running the Prolog sources)