Соображения при обновлении расширений ThingWorx
При обновлении расширений используйте следующие оптимальные методы:
Обновление до ThingWorx 8.4 и более поздних выпусков
Библиотеки JSON не поставляются с ThingWorx 8.4 и более поздних версий. Если для проектов расширений требуются библиотеки JSON, обновите файл build.gradle следующим образом:
Добавьте следующий код в блок зависимостей:
compile group: 'org.json', name: 'json', version: '20090211'
Добавьте следующий код в любое место в файле gradle:
repositories {
jcenter()
}
Обновление расширений на основе Java
При обновлении расширений на основе Java используйте следующие оптимальные методы:
При обновлении расширения на основе Java с помощью импорта новой версии перезапустите ThingWorx Platform. При перезапуске ThingWorx Platform ZIP-файл расширения помещается в очередь:
/ThingworxStorage/extensions/upgradequeue
После перезапуска сервера Tomcat Apache ThingWorx пытается импортировать ZIP-файлы расширения, находящиеся в очереди.
Проверьте журналы приложений после перезапуска ThingWorx Platform, чтобы убедиться, что все поставленные в очередь расширения успешно импортированы.
Возможны обновления комплексных расширений на основе Java на месте. Однако загрузчик класса Tomcat не допускает обновления расширений на основе Java на месте в следующих сценариях:
При добавлении новой сущности на основе Java в JAR.
При удалении или переименовании сущности на основе Java в JAR.
В таких случаях рассмотрите следующее обходное решение:
Можно создавать новые сущности, если их сервисы реализуются только в JavaScript.
Рекомендуется создать новое расширение для новой функциональности и затем создать отдельный JAR-файл.
Обновленное расширение сохраняет функциональность более старой версии
Загруженные классы из предыдущей версии приводят к тому, что расширение сохраняет функциональность предыдущей версии. Перезапустите Tomcat, чтобы загрузить обновленное расширение.
Было ли это полезно?