Podczas mojego pierwszego, testowego wdrożenia aplikacji do Azure napotkały mnie ostrzeżenia dotyczące konfliktu różnych wersji zależności. Odpalając todo.team lokalnie w zasadzie je ignorowałem. Przy kompilowaniu rozwiązania już w Azure zaczął robić się problem. Oprócz jasno brzmiącej regułki nie miałem żadnego odniesienia do powodującej konflikt referencji. Przeklikiwanie przez wszystkie to strata czasu. Jak więc sobie poradziłem z tym tematem?
Found conflicts between different versions of the same dependent assembly that could not be resolved. These reference conflicts are listed in the build log when log verbosity is set to detailed.
No dobrze, skoro komunikat mówi, że konflikt referencji został wymieniony w logu tworzonym podczas builda, tam też się udałem. Uprzednio jednak należało go przestawić na widok szczegółowy. Zrobiłem to przechodząc w menu Narzędzia do pozycji Opcje….
Skompilowałem ponownie całe rozwiązanie i przeszedłem do konsoli Danych Wyjściowych.
Uhhh… ściana tekstu. No ale dobrze, skoro to konflikt, przeszukam go pod kątem wyrazu „conflict”. Poszło gładko, szybciej niż się spodziewałem.There was a conflict between “System.Net.Http, Version=4.0.0.0 (…) and “System.Net.Http, Version=2.0.0.0
Nie wiedzieć więc czemu zainstalowałem sobie referencje w dwóch projektach, w zupełnie innych wersjach. Przejrzałem listę referencji dwóch projektów, które tworzą moje rozwiązanie i faktycznie – okazało się, że System.Net.Http widnieje na obu.
Wybrałem starszą wersję i ją po prostu skasowałem. Żeby nie było luki, dodałem usuniętą referencję raz jeszcze, tym razem w poprawnie.
Jeszcze jedna kompilacja i błędy zniknęły, deploy do Azure się udał.
Jeszcze jedno…
Być może zainteresował Cię wątek wdrożenia do Azure. Robiłem to pierwszy raz, kiedy tylko bardziej rozeznam się w działaniu portalu Microsoft Azure na pewno napiszę do tego kilka postów na blogu.
Zachęcam do śledzenia moich dalszych postępów w konkursie #dajsiepoznac. Poniżej znajdziesz garść przydatnych ku temu linków.
- Repozytorum todo.team na GitHub
- Tag na blogu do obserwowania
- RSS z wpisami
- Konto na Twitterze
- Konto na Facebooku
Tagi: asp.net • Azure • Daj Się Poznać 2017 • deploy • konflikt referencji