Używam Maven (i Maven Eclipse Integration) do zarządzania zależnościami dla moich projektów Java w Eclipse. Funkcja automatycznego pobierania plików JAR z repozytoriów Maven to oszczędność czasu rzeczywistego. Niestety nie zawiera dokumentacji API i kodu źródłowego.
Jak skonfigurować Mavena, aby automatycznie pobierał również załączniki źródłowe i javadoc oraz poprawnie je rejestrował w Eclipse?
Odpowiedzi:
Jestem pewien, że wtyczka m2eclipse Maven do Eclipse - odwrotnie - może to zrobić. Możesz go skonfigurować tak, aby automatycznie pobierał zarówno pliki źródłowe, jak i javadoc.
Można to osiągnąć, przechodząc do opcji Okno> Preferencje> Maven i zaznaczając opcje „Pobierz źródła artefaktów” i „Pobierz artefakt JavaDoc”.
źródło
lub
lub możesz dodać obie flagi, jak wskazuje Spencer K.
Dodatkowo
=true
porcja nie jest wymagana, więc możesz użyćźródło
Inne odpowiedzi w tej pracy, ale jeśli chcesz uniknąć konieczności zapamiętywania argumentów wiersza poleceń, możesz również po prostu dodać do downloadSources i downloadJavadocs config do sekcji maven-eclipse-plugin w swoim pom.xml:
źródło
settings.xml
pliku.Wolę nie umieszczać ustawień pobierania źródła / Javadoc w
pom.xml
pliku projektu , ponieważ uważam, że są to preferencje użytkownika, a nie właściwości projektu. Zamiast tego umieszczam je w profilu w moimsettings.xml
pliku:źródło
Kliknij prawym przyciskiem myszy projekt -> maven -> źródła pobierania
źródło
Jeśli słoiki źródłowe znajdują się w repozytorium lokalnym i używasz obsługi maven Eclipses, źródła są automatycznie dołączane. Możesz uruchomić,
mvn dependency:sources
aby pobrać wszystkie pliki JAR ze źródłami dla danego projektu. Nie wiem jednak, jak zrobić to samo z dokumentacją.źródło
mvn dependency:sources
mogłem kliknąć w Eclipse, aby odczytać źródło. Nie jest wymagane dodatkowe mycie za pomocą m2e. Aby pobrać javadocs, które robiszmvn dependency:sources -Dclassifier=javadoc
.Jeśli używasz meclipse, zrób
okno -> maven -> Pobierz źródła artefaktów (zaznacz zaznacz)
(Jeśli nadal otrzymujesz okno załączania źródła, kliknij przycisk dołączania pliku i zamknij okno załączania źródła. Następnym razem, gdy spróbujesz zobaczyć źródło, otworzy się poprawne źródło)
Surajz
źródło
Jest też podobne pytanie, które odpowiada na to i obejmuje przykładowe ustawienia pom.
źródło
Próbowałem windows-> pref ..-> Maven Ale to nie wyszło. Dlatego utworzyłem nową ścieżkę klas za pomocą polecenia mvn eclipse: eclipse -DdownloadSources = true i raz odświeżyłem obszar roboczy. voila .. Źródła zostały załączone.
Wpis źródła jar jest dostępny w ścieżce klasy. Dlatego nowa wersja rozwiązała problem ...
źródło
w mojej wersji Eclipse helios z m2Eclipse nie ma
Pod oknem jest tylko „nowe okno”, „nowy edytor” „otwarta perspektywa” itd.
Jeśli klikniesz prawym przyciskiem myszy na swoim projekcie, wybierz maven -> źródła pobierania
Nic się nie dzieje. żadne źródła nie są pobierane, żadne pliki pom nie są aktualizowane, nie pojawia się okno z pytaniem, które źródła.
Wykonywanie mvn xxx poza eclipse jest niebezpieczne - niektóre polecenia nie działają z m2ecilpse - zrobiłem to raz i straciłem cały projekt, musiałem przeinstalować eclipse i zacząć od zera.
Nadal szukam sposobu, aby ecilpse i maven znaleźć i używać źródła zewnętrznych plików jar, takich jak servlet-api.
źródło
Zmiana pom dla maven-eclipse-plugin tak, aby zawierała source / javadoc, wystarczy zastosować dla nowych zależności dodawanych do pom. Jeśli musimy ubiegać się o istniejące zależności, musimy uruchomić zależność mvn: sources. Sprawdziłem to.
źródło
Sprawdzanie źródła pobierania / javadoc w preferencjach Eclipse-Maven czasami nie wystarcza. W przypadku, gdy maven z jakiegoś powodu nie mógł ich pobrać (awaria sieci?), Maven tworzy jakieś pliki * .lastUpdated, po czym nigdy nie pobierze ich ponownie. Moim rozwiązaniem empirycznym było usunięcie katalogu artefaktów z .m2 / repozytorium i ponowne uruchomienie obszaru roboczego eclipse ze sprawdzonym źródłem pobierania / javadoc i sprawdzeniem aktualizacji projektów przy starcie. Po ponownym uruchomieniu obszaru roboczego, być może niektóre projekty mogą zostać oznaczone jako błędne, podczas gdy postęp zaćmienia jest pobierany, każdy błąd zostanie usunięty. Może ta procedura nie jest aż tak „naukowa”, ale mi się udało.
źródło
Dodałem konfigurację pom do wtyczki maven-eclipse w celu pobrania źródła i javadoców, ale myślę / mam nadzieję, że stanie się to dla nowych zależności, a nie istniejących.
W przypadku istniejących zależności przejrzałem w eksploratorze pakietów do „Zależności Mavena” i kliknąłem prawym przyciskiem myszy na plik commons-lang-2.5.jar, wybrano Maven | Pobierz źródła i ... nic się nie wydarzyło (brak paska postępu lub wskazanie, że coś robi). Jednak udało mi się pobrać, ponieważ jestem teraz w stanie przeskoczyć do źródła we wspólnym języku.
źródło
overthink zasugerował użycie konfiguracji w pom:
Najpierw pomyślałem, że to nadal nie będzie dołączać javadoc i źródeł (jak wcześniej bezskutecznie próbowałem z tą opcją -DdownloadSources).
Ale niespodzianka - plik .classpath JEST pobiera źródła i dołącza javadoc podczas korzystania z wariantu POM!
źródło
W przypadku Indigo (i prawdopodobnie Heliosa) powyższe pola wyboru znajdują się tutaj:
Okno -> Preferencje -> Maven
źródło
Miałem podobny problem, a rozwiązaniem, które działało najlepiej, było umieszczenie źródła w tym samym pliku jar co skompilowany kod (więc dany katalog w jar zawierałby oba
Foo.java
iFoo.class
). Eclipse automatycznie kojarzy źródło ze skompilowanym kodem i automatycznie dostarcza JavaDoc ze źródła. Oczywiście jest to przydatne tylko wtedy, gdy kontrolujesz artefakt.źródło
Po ustawieniu właściwości na poziomie projektu lub właściwości użytkownika, wykonaj Maven -> Aktualizuj projekt (wymuś aktualizację). Pobiera źródła
źródło