JamVM - это небольшая, четко написанная виртуальная машина Java с открытым исходным кодом, предназначенная только для интерпретатора, портированная на множество различных платформ.

Эта машина была написана Робертом Лугером и использовалась как популярный инструмент для разработки альтернативных системных библиотек Java в то время, когда это было необходимо. Скомпилированный двоичный файл сравнительно очень мал (всего около 200 КБ исполняемого файла). Он поддерживает полную спецификацию, включая финализацию объекта, мягкие / слабые / фантомные ссылки, выгрузку классов, JNI и отражения. При переносе на новую платформу ввод-вывод и аналогичные функции предоставляются через JNI.

Код доступен под лицензией GPL. Больше можно найти здесь.