Использование одного исходного файла Java в двух разных проектах, оба в процессе разработки
-
10-10-2019 - |
Вопрос
Я разрабатываю веб-приложение Spring (Java Framework для веб-разработки на стороне сервера), которое будет отвечать на другое клиентское приложение Java (которое использует коммуникацию сокета) объектом JSON. В то же время я работаю как над серверными и клиентскими приложениями Java.
Проблема в том, что у меня есть куча файлов (скажем, интерфейсы переменной JSON), которые используются в обоих проектах. На данный момент у меня есть дублирующие копии этого интерфейса, в разных пакетах в двух проектах. Но это вызывает несоответствие, потому что мне нужно обновить оба файла всякий раз, когда мне нужно внести изменения в интерфейс.
У кого -нибудь есть аккуратное решение для этого?
Спасибо
Решение
Вы должны относиться к своему общему коду на уровне пакета, а не к уровню файла.
Вы должны создать пакет определений интерфейса, которые используются как на стороне клиента, так и на стороне сервера вашей архитектуры, и всякий раз, когда этот пакет изменяется, обе стороны должны будут соответственно измениться.
РЕДАКТИРОВАТЬ:
Я не был явным об этом, но предложение Зеллуса об импорте общего кода в качестве банки является хорошим.
Другие советы
Вы можете создать отдельный проект для вашего общего кода JSON. Используя подрыв, SVN: Внешние разрешают аккуратную интеграцию на уровне источника. Импорт общего кода в качестве файла JAR является еще одним подходом.
Если вы используете Maven, вы можете создать локальный проект Maven, содержащий все классы, которые вам могут понадобиться в разных проектах, и добавить эту зависимость в свой pom.xml, который требует этих классов.