Это действительно сводит меня с ума.Независимо от того, что я делаю, кажется, что Mirth (1.8.2) использует более старую версию моего JAR-файла;Я знаю из-за различных признаков, таких как:
- Я не могу вызвать какие-либо функции
- Зарегистрированная информация не отображается в журналах
- Изменены сообщения журналане изменяется в файлах журнала
- Файлы, которые когда-то создавались и записывались в коде, но больше не затрагивались кодом, все еще создаются и записываются
Я перепробовал всеЯ могу придумать, чтобы сделать эту работу. работал в какой-то момент, но теперь кажется, что он больше не обновляется.Мой процесс интеграции моих изменений в Mirth:
- Запуск сценария ant для создания файла JAR
- Скопируйте файл JAR в \ lib \ custom
- Перезапуститеслужба Mirth (через администратора Mirth)
Я попытался перезапустить (служба Mirth через службы, Java, компьютер) - безрезультатно.Я знаю, что мой JAR-файл правильный, потому что я декомпилировал его (чтобы убедиться, что он содержит самый последний код) и хэшировал его (для сравнения с хэшем JAR-файла, созданного муравьем) - он правильный и код есть;это просто не работает.
Я в конце остроумия;это происходит нечасто, но полностью блокирует меня от разработки.
Редактировать: Я также знаю, что мой код правильный, потому что когда я запускаю модульные тесты, он генерирует правильные файлы и вызывает правильные функциии записывает правильную информацию.Кажется, только Мерт «не понимает».
И мои занятия очень просты;простые конструкторы с одним аргументом и несколько открытых методов, которые возвращают различные данные.Ничего сложного, никаких вложенных классов / JAR / зависимостей.
Редактировать: Я даже удалил свой пользовательский файл JAR и перезапустил Mirth, и он все еще выполняет мой код.Круто: / Я добавил награду за этот вопрос.Я подозреваю, что JAR-файл где-то кешируется (хотя они и отрицают это на форумах Mirth), и этот кеш нужно как-то очистить (хотя перезапуск службы Mirth и мой компьютер этого не делает, вне меня).
Я также убил все экземпляры Java (и перезагрузил мой компьютер), поэтому крайне маловероятно, что JVM где-нибудь кеширует JAR.
Я попытался переустановить Mirth. По какой-то причине у меня был свой собственный канал, когда я впервые загрузил администратора;и, к сожалению, он по-прежнему работает со старым JAR, хотя я обновил его новым в lib \ custom.