Muszę używać niezarządzanego zależność SNAPSHOT w mojej aplikacji java/maven heroku. Robię to za pomocą lokalnego repozytorium projektu, opisanego w this article.Jak czyścić pamięć podręczną zależności Heroku (niezarządzane zależności maven)
Heroku buforuje zależności między kompilacjami. Niestety, Heroku nie zauważy, czy wersja SNAPSHOT zmienia się i nadal korzysta z buforowanej zależności. Prowadzi to do błędów kompilacji, ponieważ zależą od zmian w wersji SNAPSHOT.
Czy istnieje sposób ręcznego lub automatycznego czyszczenia tej pamięci podręcznej zależności?
Znalazłem to maven plugin (robi lokalną kompilację i wypycha powstałe artefakty do heroku), ale tak naprawdę nie jest tak, jak chcę to zrobić.
Można argumentować, że jest to zła praktyka polegająca na używaniu tej zależności migawki, ale sądzę, że istnieją inne mniej lub bardziej uzasadnione powody czyszczenia gotówki, np. wycieku pamięci jako niezarządzane zależności nie są nawet usuwane, jeśli są one usuwane z lokalnego repozytorium projektu.
Doceniam odpowiedź
Dzięki za odpowiedź. Zgodnie z oczekiwaniami, użycie buildpack prowadzi do dość długotrwałego pobierania zależności. Niestety pojawia się następujący błąd: 'Nie można przenieść artefaktu: : pom: 1.3-SNAPSHOT z/do project.local (file:/tmp/build_asdf/repo): Sprawdzanie sumy kontrolnej nie powiodło się, oczekiwano , ale jest '. Używanie "-DcreateChecksum = true" podczas budowania artefaktów nie pomogło. –
mulrich
Aby ominąć rzecz sumy kontrolnej, pomocne jest usunięcie fail checksumPolicy> z tagu repozytorium (project-local). –
mulrich
Aktualizuję aktualizację. W rzeczywistości część historyczna powinna być stylizowana z przekreśleniem, aby wskazać, że plugin heroku jest zdecydowanie preferowany. –