Когда я пытался обновить работающее приложение Phoenix с помощью Distillery, сборка завершилась с такими сообщениями:
Generated teamgenik app
==> Assembling release..
==> Building release my_app:0.10.7 using environment prod
==> Generated .appup for artificery 0.2.6 -> 0.4.1
==> Generated .appup for db_connection 2.0.3 -> 2.0.6
==> Generated .appup for decimal 1.6.0 -> 1.7.0
==> Generated .appup for ecto 3.0.6 -> 3.0.8
==> Generated .appup for ecto_sql 3.0.4 -> 3.0.0
==> Generated .appup for phoenix 1.4.0 -> 1.4.3
==> Generated .appup for phoenix_html 2.13.0 -> 2.13.2
==> Generated .appup for phoenix_pubsub 1.1.1 -> 1.1.2
==> Generated .appup for plug 1.7.1 -> 1.7.2
==> Generated .appup for plug_cowboy 2.0.1 -> 2.0.2
==> Generated .appup for teamgenik 0.10.6 -> 0.10.7
==> Generated .appup for telemetry 0.3.0 -> 0.2.0
==> Release failed with multiple errors:
Multiply defined module: 'Elixir.Telemetry'
Я работаю с этим приложением в течение нескольких месяцев и несколько раз успешно обновлял его.На этот раз я хочу повысить версию Phoenix с 1.4.0 до 1.4.3.
Я прочитал эту запись на форуме Elixir:
https://elixirforum.com/t/distillery-build-error-multiply-defined-module-elixir-collectable-ecto-adapters-sql-stream/19489
Я пробовал mix deps.clean --all
и mix release.clean
.Любой совет или предложение?
ОБНОВЛЕНИЕ
Я заметил своеобразный феномен.Когда я выполнил bin/my_app upgrade 0.10.7
на RELEASE_ROOT_DIR
, я получил это сообщение об ошибке (обратите внимание на двойные кавычки и запятую между ними):
Could not locate code path for release-my_app","0.10.6!