Как передать версию приложения во внешний интерфейс Spring и Angular? - PullRequest
0 голосов
/ 28 января 2020

Мне нужно иметь возможность показывать в интерфейсе номер версии приложения, которое я получаю от pom. xml.

Сначала я решил использовать API-вызов для внутреннего интерфейса. Но тогда я подумал, что будет лучше установить его во время строительства.

У меня вопрос, как я могу установить глобальную переменную в angular, которая содержит номер версии из файла pom. xml, используя новые angular инструменты сборки CLI. Я использую Angular 8, если это поможет.

1 Ответ

0 голосов
/ 31 января 2020

Я не уверен, что в настоящее время это возможно простым способом.

Один из подходящих подходов - создать свойство version в файле environment.ts с константой, скажем, {VERSION} , Затем создайте сценарий оболочки, который выполняет следующие действия:

  1. Извлечение версии из файла pom.xml;
  2. Замените {VERSION} в environment.ts этой версией.

Затем добавьте сценарий оболочки в сценарий сборки перед сборкой.

Хотя это не идеально. В идеале ваш внешний интерфейс должен быть независимым от внутреннего. Добавляя зависимый от сервера сценарий к вашей внешней сборке, вы добавляете дополнительную зависимость между ними, которая может создать проблемы в дальнейшем.

Интересно, если ваша оригинальная идея (через API) не лучше. Если вы получаете номер версии через API, вы сохраняете свой внешний интерфейс независимым от вашего внутреннего. Вы также можете добавить дополнительную внутреннюю информацию для вызова API, такую ​​как дата сборки, текущее время на сервере и т. Д. c.

...