Я унаследовал очень старое приложение, которое не было модернизированной, потому что это зависит от библиотеки третьей стороны, которая зависит от Java 4.Java 6 VM для вызова Java VM 4
Избавление от этой третьей стороны библиотека не произойдет в ближайшем будущем, поскольку критическая часть системы зависит от нее.
Я хочу привести Java-версию приложения в актуальное состояние и думать о перемещении зависящей банки в свою собственную виртуальную машину и затем иметь какой-то вызов между виртуальной машиной Java 6/7 и виртуальной машиной Java 4.
Первые мысли - использовать RMI. Очевидным первым вопросом является совместимость между виртуальными машинами при использовании разных версий Java. Третья сторона lib создает потоки байтов, поэтому на возвращаемые данные не влияет сериализация. Переданные данные могут быть обработаны во что-то, что может быть передано, если проблема совместимости.
Это правильный путь?
Есть ли лучшие способы?
Я чувствую, что вы тратите свое время, если вы не можете удалить зависимость Java 4 - вы получаете небольшую безопасность и много накладных расходов. Какова фактическая ошибка, Java довольно обратная совместимость - возможно, вы можете обернуть стороннюю библиотеку, чтобы она могла работать под Java 6? –
RMI - хороший выбор. Вероятно, это самый простой вариант, и из вашего описания сторонней библиотеки звучит так, что не стоит тратить на это больше усилий, чем необходимо. – VGR