2009-09-15 16 views
23

Eclipse 3.5 dodał obsługę względnych ścieżek buildpath/classpath, ale nie potrafię znaleźć graficznego sposobu dodawania względnie patowanych elementów. The example in new and noteworthy (search the page for 'relative', about 40% of the way down) wydaje się wskazywać, że muszę ręcznie edytować plik .classpath. Czy czegoś mi brakuje?Jak dodać elementy ścieżki budowania do Eclipse 3.5 za pomocą ścieżek względnych?

Edytuj 2015: Zaktualizowany link, ponieważ odszedł. Aby zachować "nowe i godne uwagi" w nieskończoność, oto zrzut ekranu z wspomnianej sekcji.

enter image description here

+0

+1 wygląda jak można to zrobić tylko przez hacking ścieżki klasy –

Odpowiedz

3

Po dokonaniu oceny wszystkich odpowiedzi i majstrować przy Eclipse widzę żadnego sposobu, aby to zrobić bez ręcznej edycji pliku .classpath.

Oznaczenie tej odpowiedzi jako przyjętej w celu wskazania, że ​​nie można tego zrobić w Eclipse 3.5. Trzymaj kciuki za Eclipse 3.6 lub Eclipse 4.

+1

tylko zastanawiasz się: w jaki sposób to zrobiłeś ręcznie? Ilekroć umieszczam wzorzec pliku jak ../name.jar w ścieżce klas, Eclipse craps out (to Galileo) – Matthias

+0

@ Matthias: Widzę to samo z Helios. –

+0

Nie działa także w Eclipse Luna SR2 (4.4.2). – zb226

2

myślę, że można to zrobić graficznie zamiast edycji .classpath. W zależności od wersji Eclipse to coś jak:

prawym przyciskiem myszy projekt -> Właściwości -> Build Path -> Biblioteki (TAB) -> Add Variable

działa w moim obecnym Eclipse z projektem Java .. ;-)

+1

czyli dodawania zmiennych zamiast bezpośrednich ścieżek względnych. Nie, o co w ogóle poproszono –

+0

Zgadnij, że brakuje mi pytania. Myślałem, że chcesz zmienić .classpath, aby dodać coś takiego: Ale używając interfejsu graficznego. Mój zły .. – NickDK

+2

nie.Chciałem dodać wpis typu "../../lib/junit.jar" – basszero

0

O ile mi wiadomo, obecnie można to osiągnąć jedynie edytując plik .classpath. Aby było to możliwe poprzez czysty "przycisk przesuwania" okna dialogowe przeglądania pojawiające się po wybraniu "Dodaj zewnętrzne pliki JAR ..." i "Dodaj zewnętrzny folder klasy ..." potrzebują czegoś w rodzaju pola wyboru, aby określić, czy chcesz dodaj względną lub bezwzględną ścieżkę. Może nie jest to trudne do dodania, ale jeszcze go nie widziałem.

11

Faktyczny sposób, aby to zrobić jest importować biblioteki do swojego obszaru roboczego tak,

kliknij prawym przyciskiem myszy w Package Explorer -> Import -> File System -> Browse (do katalogu zawierającego swoje słoiki) -> Sprawdź pól obok słoików, które chcesz -> Przejdź do folderu roboczego, do którego chcesz importować (prawdopodobnie do folderu lib) -> Zakończ

Pamiętaj, że skopiuje pliki do folderu lib, więc znalazłem że pomaga utrzymać wszystko w czystości, jeśli jeszcze ich tam nie masz. Będą teraz wyświetlane w eksploratorze pakietów w obszarze "lib". Aby dodać je do ścieżki klasy, kliknij prawym przyciskiem myszy na projekcie -> Utwórz ścieżkę -> skonfiguruj ścieżkę budowania ... -> Dodaj pliki JAR -> przejdź do folderu lib danego projektu i wybierz odpowiednie pliki JAR -> kliknij przycisk OK -> kliknij wykończenie

Dodaje je do CP z względnymi lokalizacjami.

Jeśli potrzebujesz dodatkowej pomocy daj mi znać

+3

Niezupełnie. Nie chcę importować słoików do projektu, chcę odwoływać się do katalogów lib (które są zewnętrzne i kilka nadrzędnych katalogów głównych) za pośrednictwem względnych ścieżek, aby każdy, kto sprawdza moje projekty, nie będzie musiał ustawiać zmiennych lub environment – basszero

+0

Ścieżki względne kompilacji Eclipse są względne w projekcie. O ile mi wiadomo, jedynym sposobem, aby eclipse rzeczywiście odnosił się do rzeczy w ten sposób, jest umieszczenie ich w projekcie w menedżerze projektu. Być może będziesz w stanie używać operatorów takich jak ... do odwoływania się do innych katalogów, ale nie wiem, jak to zrobić graficznie. Przepraszam! –

0

Nie. Jak dotąd nie jest to możliwe. Ale wkrótce to zobaczysz. Sprawdzaj kompilacje integracji.

5

To nie działa!

Edycja ścieżki .clas w celu uwzględnienia ścieżek względnych zgodnie z przykładem New and Noteworthy (ścieżka = "../../ lib/myjar.jar") nie jest trudna, jednak nie działa tak, jak opisano !

Wygląda na to, że odnosi się on do obszaru roboczego, a nie do konkretnego projektu, który został określony, co nie jest zbyt przydatne. Czy ktoś inny znalazł ten sam problem lub rozwiązanie tego problemu?

0

Zrobiłem to, dodając biblioteki do mojego projektu. Stwórz więc folder pod swoim projektem "słoiki" i umieść tam wszystkie słoiki zależne.

Po skonfigurowaniu ścieżki budowania po wszystkim wszystko będzie względne.

11

Używam Helios (czyli 3.6.x) i to jest to, co robię, aby odwoływać się do lib (słoika) poza moim projektem w sposób względny.

1) Kliknij projekt prawym przyciskiem myszy w eksploratorze projektu -> Importuj -> Importuj. 2) Wybierz System plików (Dalej) Użyj przycisku przeglądania, aby przejść do folderu (tak, wygląda na ścieżkę twardą). Wybierz .jar (y) do uwzględnienia.

Zazwyczaj dołączam "\ lib" do nazwy projektu w opcji "Into Folder:".

Kliknij "Zaawansowane" i wybierz "Utwórz łącza w obszarze roboczym" i korzystam z domyślnych opcji (zarówno zaznaczonych, jak i względem PROJECT_LOC). 3) Kliknij Finish

Dalej, otwórz właściwości projektu i przejść do Java Build Path kartę Biblioteki i wybierz „Dodaj Jars ...” i przejdź do folderu \ lib (z etapu 2) i wybierz lib (s), którego potrzebujesz. Na karcie Biblioteki znajduje się teraz "ProjectName/Lib" dla ścieżki do bibliotek (bibliotek).

Eksplorator projektu wyświetli folder lib z twoimi bibliotekami za pomocą specjalnej ikony. Jeśli zajrzysz na dysk twardy do folderu lib, nic tam nie ma. Więc odnosi się do bibliotek na zewnętrznej ścieżce, ale zawiera je jako bibliotekę "projektu".

Kliknij prawym przyciskiem myszy plik jar w eksploratorze projektu i wykonaj właściwości. Powinieneś zobaczyć dobroć względnej ścieżki.

+1

Idealny! Za pomocą tej metody tworzony jest folder wirtualny, który zawiera pliki jar. Same pliki JAR ** nie są kopiowane **, ale zachowane w pierwotnej lokalizacji i odwoływane przy użyciu ścieżki względnej (np. ' /../../ mylittle.jar'). – Daniel

+0

Czy trzeba skonfigurować PROJECT_LOC lub czy była ona wstępnie zdefiniowana? – Rikki

8

Prosty. bez wszystkich okien dialogowych i menu.

W swoim pliku .project dodaj ścieżkę do prawdziwego pliku, jak to. Kopalnia jest na ../libs/GoogleAdMobAdsSdkAndroid-4.1.1/GoogleAdMobAdsSdk-4.1.1.jar
więc zmieniło się rodzic-1-PROJECT_LOC/libs/...

<linkedResources> 
    <link> 
     <name>libs/GoogleAdMobAdsSdk-4.1.1.jar</name> 
     <type>1</type> 
     <locationURI>PARENT-1-PROJECT_LOC/libs/GoogleAdMobAdsSdkAndroid-4.1.1/GoogleAdMobAdsSdk-4.1.1.jar</locationURI> 
    </link> 
</linkedResources> 

aw .classpath używam

<classpathentry kind="lib" path="libs/GoogleAdMobAdsSdk-4.1.1.jar"/> 

jako odnośnik do lib

Eclipse łączy zasobów do projektu i używa go bez copping plik Podobnie jak Mike Jones odpowiedzieć powyżej, ale bez dialogów

Najlepsze dla wielu aplikacji

Powiązane problemy