Разделите ваше приложение на три артефакта / проекта / JAR:
client
- код, который вызывает сервер через RMI API.Зависит от api
server
- реализовать API на стороне сервера.Очевидно, client
не зависит от этого артефакта api
- и client
, и server
зависят от API: client
использует, server
реализует.
Этот подход позволяет разрабатывать как client
, так и server
независимо.Также нельзя легко пропустить изменение api
, поскольку это отдельный проект.