2013-08-06 14 views
5

Mam ciężkie czasy nauki Mavena w tych dniach, wydaje się trudniejsze niż uczenie się wszystkich języków programowania 4-5, które znam w sumie. Jednak pierwsze kroki zostały wykonane i udało mi się zbudować pierwszy projekt usług REST Java oparty na Jersey w Eclipse z wtyczką m2eclipse. Gdy próbowałem to zrobić, dodałem kilka globalnych repozytoriów, z których większość jest albo nieistotna, albo niepoprawna i jakoś dodałem je wszystkie do "Efektywnego POM" zamiast do projektu POM, więc na świecie jest wiele repozytoriów śmieci. Teraz pytanie:Jak usunąć repozytoria z Efektywnego POM

Jak mogę edytować/zarządzać "Skutecznym POM" w celu usunięcia tych repozytoriów? Próbowałem to zrobić za pomocą wbudowanego edytora POM, ale pokazywałem go jako tylko do odczytu, próbowałem także usunąć je za pomocą "repozytoriów Maven", ale nie ma takiej opcji.

Może istnieje sposób ręcznej edycji, gdzie globalny POM znajduje się w systemie plików?

W "Effective POM" widzę dodane repozytorium powielone w obu tagach <repository> i <pluginRepository>. Jaka jest różnica między tymi tagami? Jeśli usunę je ręcznie, czy powinienem je usunąć?

Odpowiedz

6

The "Effective POM" is what Maven constructs when it parses your project. Składa się z twojego POM i jego (wielkiego) macierzystego POM. Efektywny POM nie istnieje w systemie plików użytkownika, jest generowany w locie za każdym razem, gdy uruchamiany jest build Maven - stąd dlaczego widok jest "tylko do odczytu".

Innymi słowy - nie dodałem te repozytoria do Effective POM, ale do jednego z POM przodków swojego projektu lub one of the settings.xml files rozwiązane przez mvn i/lub Eclipse. Usuń te stamtąd, a twój problem zostanie rozwiązany.

+0

Po pierwsze, dziękuję za wyjaśnienie dotyczące Skutecznego POM, przynajmniej teraz jest jasne, co to jest :) – aquila

+0

W końcu znalazłem, gdzie wszystkie te repozytoria zostały dodane do - .m2 \ settings.xml, co jest rodzajem pliku z ustawienia wspólne dla wszystkich projektów, czyż nie? Czy istnieje jakakolwiek opcja edycji w sposób konwencjonalny lub tylko podejście ręczne? – aquila

+1

@ aquila: ah, tak, zapomniałem wspomnieć o settings.xml, przepraszam za to. Odpowiednio zredagowałem swoją odpowiedź (i tak, możesz je edytować, są to tylko pliki XML, ale pamiętaj, że niektóre pliki settings.xml mogą być globalne i używane przez inne osoby w systemie - nie wydaje się, aby tak było w tym przypadku). –

Powiązane problemy