У нас есть несколько приложений, которые используют Apache HTTPClient 3 для выполнения HTTP-запросов.Недавно мы также начали создавать клиенты веб-служб, которые используют HTTPClient 4 по разным причинам.Позиция Apache заключается в том, что « основные выпуски не имеют обратной совместимости ».Хотя я бы хотел обновить все наши проекты до версии 4, это просто невозможно.
Итак, хотя мой главный вопрос довольно общий, мой конкретный вопрос таков. Как я могу использовать HTTPClient версии 3 и 4 в одном приложении? В нашем случае приложение может быть веб-приложением, приложением для настольного компьютера или командной строкой.
Я прочитал ТАК вопрос о java-динамически загружать несколько версий одного и того же класса , который кажется полузакрытым, но меня не очень волнует динамическая часть.На самом деле я хотел бы, чтобы JAR-файлы поставлялись вместе с приложением (например, WEB-INF / lib для веб-приложений). Я также вижу, что OSGi много упоминал в вопросах, похожих на этот, но это кажется излишнимили, может быть, слишком сложный (может быть, простой пример может доказать обратное).
В конце я хочу иметь возможность передать команде набор банок, которые они могут вставить, и он просто работает независимо от их проекта, используяHTTP-клиент 3.