Czy istnieje łatwy sposób na dołączenie źródła w Eclipse?

131

Jestem wielkim fanem sposobu, w jaki Visual Studio poda dokumentację komentarzy / nazwy parametrów podczas wypełniania napisanego przez Ciebie kodu, a także kodu, do którego się odwołujesz (różne biblioteki / zestawy).

Czy istnieje łatwy sposób na uzyskanie wbudowanych nazw javadoc / parametrów w Eclipse podczas wykonywania kodu lub najechania kursorem na metody? Przez wtyczkę? Przez jakieś ustawienie? Używanie wielu bibliotek (jak to często bywa w Javie) jest niezwykle irytujące, a następnie przechodzenie do witryny internetowej lub lokalnej lokalizacji javadoc w celu wyszukania informacji, które znajdują się w źródłowych jarach!

Alex Argo
źródło
Czy jest inna metoda korzystania z wtyczki maven m2e?
cmcginty
1
Zobacz też: Jak dołączyć javadoc lub źródła do plików jar w folderze libs? aby dowiedzieć się, jak to zrobić dla Androida, gdzie poniższe rozwiązanie nie działa.
blahdiblah

Odpowiedzi:

153

Krótka odpowiedź brzmiałaby: tak.

Możesz dołączyć źródło, używając właściwości projektu.

Przejdź do Właściwości (dla projektu) -> Ścieżka budowania Java -> Biblioteki

Wybierz bibliotekę, do której chcesz dołączyć źródło / javadoc, a następnie rozwiń ją, zobaczysz taką listę:

Source Attachment: (none)
Javadoc location: (none)
Native library location: (none)
Access rules: (No restrictions)

Wybierz lokalizację Javadoc, a następnie kliknij Edytuj po prawej stronie. Stamtąd powinno być całkiem prosto.

Powodzenia :)

Henry B.
źródło
3
Powinieneś oczywiście pamiętać, że możesz również zrobić to samo z sekcją Załącznik źródłowy, jeśli masz rzeczywiste źródło, które chcesz dołączyć. Następnie otrzymujesz Javadoc i możesz bezpośrednio spojrzeć na rzeczywiste źródło, jeśli chcesz.
ColinD,
15
Nazwałbym to trudnym i bolesnym sposobem dołączania źródła. Musisz to zrobić za każdym razem, gdy dołączasz plik jar do każdego projektu, w którym używasz jar. Kiedy masz dużo słoików i wiele projektów, to nie jest dobre.
James Moore
3
@JamesMoore, czy jest lepszy sposób?
Felix
12
Zbyt wiele głosów na tę odpowiedź! Ulepszona o 5 lat odpowiedź to wspomniany dołączacz źródła Java, który naprawdę pasuje do „łatwego sposobu”.
sevenforce
1
Co zrobić, gdy w bibliotece mamy „niemodyfikowalne”?
Henrique de Sousa
109

Aż do wczoraj utknąłem w skrupulatnym pobieraniu zamków źródłowych dla ton słoików i dołączaniu ich ręcznie do każdego projektu. Następnie kolega włączył mnie do programu The Java Source Attacher . Robi to, co powinno zrobić zaćmienie - menu kontekstowe dostępne po kliknięciu prawym przyciskiem myszy z napisem „Dołącz źródło Java”.

wprowadź opis obrazu tutaj

Automatycznie pobiera źródło i dołącza je. Udało mi się trafić tylko do kilku bibliotek, o których nie ma pojęcia, a kiedy to się stanie, pozwala przesłać adres URL z powrotem do społeczności, aby nikt inny nie miał problemu z tą biblioteką.

tterrace
źródło
To działa, ale czy jest jakiś łatwy sposób na przejście od sprawdzanej metody do słoika, z którego pochodzi w Project Explorer?
Noumenon
Pamiętaj, że .jarpliki nie są zapisywane w folderze projektu, więc .classpathnie będą przenośne, jeśli współpracujesz z innymi osobami.
Stevoisiak
14

Prostym sposobem na to jest:

  1. Pobierz odpowiednie pliki / foldery SRC.

  2. W edytorze zaćmień naciśnij Ctrl + kliknij lub F3 na metodzie / klasie, dla której potrzebujesz źródła. Otworzy się nowa karta z napisem „Nie znaleziono dołączonego źródła”.

  3. Kliknij przycisk „dołącz źródła”, kliknij przycisk „dołącz folder źródłowy”, przejdź do lokalizacji pobranego folderu SRC. Gotowe!

(ps: Etykiety przycisków mogą się nieznacznie różnić, ale to prawie wszystko.)

NM
źródło
6

1) Przytrzymaj Control + kliknij lewym przyciskiem myszy metodę, którą chcesz zobaczyć. Następnie Eclipse przeniesie Cię na stronę Nie znaleziono źródła.

2) Kliknij „Dołącz źródło” wprowadź opis obrazu tutaj

3) wprowadź opis obrazu tutaj

4) Przejdź do C: \ Program Files \ Java \ jdk-9.0.1 \ lib \ src.zip

5) Kliknij OK wprowadź opis obrazu tutaj Teraz powinieneś zobaczyć kod źródłowy.

Gen
źródło
5

Zauważyłem, że czasami wskazujesz katalog, który zakładasz, że jest poprawny, a następnie nadal stwierdza, że ​​nie może znaleźć pliku w załączonym źródle bla bla.

Tym razem zdałem sobie sprawę, że ostatnim elementem ścieżki był „src”. Samo usunięcie tego elementu ścieżki (a więc wskazanie poziomu wyżej niż rzeczywista ścieżka, na której znajduje się folder „org” lub „com”) w magiczny sposób sprawia, że ​​działa.

W jakiś sposób Eclipse wydaje się implikować ten element ścieżki „src”, jeśli jest obecny, a jeśli masz go wtedy uwzględniony w ścieżce źródłowej, dusi się Eclipse. Czy coś takiego.

stolsvik
źródło
Mam ten sam problem: źródło znajduje się w katalogu o nazwie „source” (gdzie znajduje się „org” itp.), Ale nie mogę zmusić Eclipse do użycia go, gdy Ctrl + klikam nazwę metody. Zamiast tego otrzymuję widok kodu bajtowego. Próbowałem zmienić jego nazwę na „src”, używając „org” jako katalogu lub powyższego „source”, ale nic się nie zmienia…
Matthieu
Nie wierzę, że Eclipse zakłada, że srcjest częścią ścieżki. Po prostu wybierz folder zawierający folder o nazwie zgodnej z nazwą domeny najwyższego poziomu pakietu.
H2ONaCl
@broiyan: Zabawne, że w to nie wierzysz, kiedy właśnie stwierdziłem, że właśnie tego doświadczyłem empirycznie, fizycznie ! :-)
stolsvik
5

tak, jest łatwy sposób ... przejdź do ... http://sourceforge.net/projects/jdk7src/ i pobierz plik zip. Następnie dołącz to do zaćmienia. Podaj ścieżkę, do której pobrałeś plik zip w eclipse. Następnie możemy przejrzeć źródło.

Ambika
źródło
4

Kiedy dodajesz plik jar do ścieżki klas, możesz dołączyć katalog źródłowy lub plik zip lub jar do tego jar. We właściwościach ścieżki budowania języka Java na karcie Biblioteki rozwiń wpis dotyczący pliku jar, a zobaczysz element dla załącznika źródłowego. Wybierz tę pozycję, a następnie kliknij przycisk Edytuj. Pozwala to wybrać folder, plik jar lub zip zawierający źródło.

Dodatkowo, jeśli wybierzesz klasę lub metodę w pliku jar i CTRL + KLIKNIJ na niej (lub naciśniesz F3), przejdziesz do widoku kodu bajtowego, który ma opcję dołączenia kodu źródłowego.

Wykonanie tych czynności spowoduje wyświetlenie wszystkich nazw parametrów, a także pełnego javadoc.

Jeśli nie masz źródła, ale masz javadoc, możesz dołączyć javadoc za pomocą pierwszej metody. Może nawet odnosić się do zewnętrznego adresu URL, jeśli go nie pobrałeś.

Matt
źródło
3
  1. Kliknij kod JAVA, który chcesz zobaczyć. (Kliknij opcję Lista, aby otworzyć List.java, jeśli chcesz sprawdzić kod źródłowy java.util.List)
  2. Kliknij przycisk „Dołącz źródło”.
  3. Zostaniesz poproszony o „Wybierz lokalizację (folder, JAR lub zip) zawierającą źródło rt.jar).
  4. Wybierz opcję „Lokalizacja zewnętrzna”. Zlokalizuj plik src.zip.
  5. Ścieżka do pliku src.zip to: * \ Java \ jdk1.8.0_45 \ src.zip
BSM
źródło
2
  1. Umieść pliki źródłowe w pliku zip (tak jak w przypadku źródła Java)
  2. Przejdź do Właściwości projektu -> Biblioteki
  3. Wybierz załącznik źródłowy i kliknij „Edytuj”
  4. W konfiguracji załącznika źródła kliknij opcję „Zmienna”
  5. W „Wybór zmiennej” kliknij „Nowy”
  6. Wpisz opisową nazwę i wybierz plik zip utworzony w kroku 1
Ranga
źródło
1

Inną opcją jest kliknięcie prawym przyciskiem myszy pliku jar, który znajdowałby się w (Twój projekt) -> Biblioteki odniesienia -> (Twój jar) i kliknięcie właściwości. Następnie kliknij Java Source Attachment. A następnie w ścieżce lokalizacji umieść lokalizację źródłowego pliku jar.

To tylko kolejny sposób dołączania pliku źródłowego.

Nilesh Tailor
źródło
1

Jeśli budujesz swoje biblioteki za pomocą gradle, możesz dołączyć źródła do tworzonych słoików, a wtedy eclipse automatycznie je wykorzysta. Zobacz odpowiedź @MichaelOryl Jak zbudować słoik źródeł za pomocą gradle .

Skopiowano tutaj w celach informacyjnych:

jar {
    from sourceSets.main.allSource
}

Przedstawione rozwiązanie jest przeznaczone do użytku z wtyczką gradle java. Przebieg może się różnić, jeśli nie używasz tej wtyczki.

Joshua Richardson
źródło
0

Kolejna myśl ułatwiająca korzystanie z automatycznej kompilacji:

Kiedy tworzysz jar jednego ze swoich projektów, utwórz także jar plików źródłowych:
project.jar
Project-src.jar

Zamiast przechodzić do okna dialogowego opcji ścieżki budowania, aby dodać odwołanie do źródła do każdego pliku jar, spróbuj wykonać następujące czynności: dodaj jedno odwołanie do źródła za pomocą okna dialogowego. Edytuj swoją ścieżkę .classpath i używając pierwszego wpisu jar jako szablonu, dodaj źródłowe pliki jar do każdego z pozostałych plików jar.

W ten sposób możesz w pełni wykorzystać pomoce nawigacyjne Eclipse, jednocześnie korzystając z czegoś bardziej samodzielnego do tworzenia projektów.

Akrikos
źródło
0

Chciałem poprosić o alternatywę dla dołączania źródeł do tego samego pliku JAR używanego w wielu projektach. Początkowo myślałem, że jedyną alternatywą jest przebudowa JAR z dołączonym źródłem, ale patrząc na funkcję „biblioteki użytkownika”, nie musisz budować JAR ze źródłem.

Jest to alternatywa, jeśli masz wiele projektów (powiązanych lub nie), które odwołują się do tego samego pliku JAR. Utwórz „bibliotekę użytkownika” dla każdego pliku JAR i dołącz do niego źródło. Następnym razem, gdy będziesz potrzebować określonego pliku JAR, zamiast korzystać z opcji „Dodaj pliki JAR ...” lub „Dodaj zewnętrzne pliki JAR ...”, dodaj utworzoną wcześniej „bibliotekę użytkownika”.

Będziesz musiał dołączyć źródło tylko RAZ na JAR i możesz go ponownie wykorzystać w dowolnej liczbie projektów.

nevets1219
źródło
0

Dla tych, którzy piszą wtyczki Eclipse i chcą dołączyć źródło ... w funkcji ExportWizard istnieje opcja włączenia źródła: wprowadź opis obrazu tutaj

Stefan
źródło
0

Po prostu kliknij dołącz źródło i wybierz ścieżkę do folderu ... nazwa będzie taka sama jak nazwa folderu (w moim przypadku). Pamiętaj o jednej rzeczy, którą musisz wybrać ścieżkę do lokalizacji podstawowej folderu projektu z "\" w sufiksie ex D: \ MyProject \

Gaurav Deshmukh
źródło
-2

Może się to wydawać przesadą, ale jeśli użyjesz mavena i włączysz źródło, wtyczka mvn eclipse wygeneruje całą konfigurację źródła potrzebną do udostępnienia całej dokumentacji, o którą możesz poprosić.

Alex Argo
źródło
1
Ale wraz z tym do normalnego systemu Eclipse potrzebny jest młot kowalski, miażdżąc wszystko, co kiedyś działało.
James Moore