Eclipse: Błąd „.. nakłada się na lokalizację innego projektu ..” podczas próby utworzenia nowego projektu


108

Podczas tworzenia nowego projektu pojawia się komunikat o błędzie w Eclipse.

Stworzyłem obszar roboczy na poziomie

C: \ Users \ Martin \ Java \ Counter

Wewnątrz licznika nie ma żadnych plików, ale istnieje katalog o nazwie counter_src, który zawiera pliki źródłowe projektu Counter

Więc w Eclipse robię, New Java Project, a następnie odznacz domyślną lokalizację i wybierz katalog

counter_src (który jest o jeden poziom niżej od Counter)

ale teraz jest wyświetlany

C: \ Users \ Martin \ Java \ Counter \ counter_src nakłada się na lokalizację innego projektu: „counter_src”

Teraz, jeśli utworzę obszar roboczy pod adresem

C: \ Users \ Martin \ Java \

co oznacza, że ​​mój counter_src jest w rzeczywistości o 2 poziomy niższy niż pozwala mi, ale problem polega na tym, że katalog Java zawiera wiele projektów, więc chciałem utworzyć obszar roboczy w Counter (który nie ma plików), który ma podkatalog counter_src, w którym moje pliki źródłowe są.

Testowałem także tworzenie katalogu w C: \ Users \ Martin \ Java \ i wygląda na to, że działa, ale nie chciałem tworzyć kolejnego podkatalogu w "C: \ Users \ Martin \ Java \" tylko po to, aby przechowywać mój obszar roboczy dla 1 projektu .


Czy próbowałeś usunąć folder counter_src, a następnie utworzyć projekt (który utworzy katalog), a następnie zaimportować pliki źródłowe?
justderb

1
Cześć Justderb! Tak, na pewno, jeśli usunę counter_src, to działa. Wygląda na to, że jeśli katalog istnieje i odznaczam opcję „użyj domyślnej lokalizacji”, pojawia się problem. Jeśli katalog istnieje i nazywam projekt counter_srv, dlatego nie muszę odznaczać opcji „użyj domyślnej lokalizacji”, to również działa… Czy to błąd?
Martin

Czy to rozwiązało Twój problem? Może to być ... ale nie zaglądałem do tego zbyt wiele :)
justderb

1
Martin: błąd użyteczności, tak. UX Eclipse jest okropny, zwłaszcza z jego założeniami skoncentrowanymi na Javie (dla nas, użytkowników Pythona), że budowanie jest jakąś nieprzejrzystą świętą operacją, która jest konieczna i powoduje, że projekty muszą żyć w oddzielnych katalogach, które muszą być tworzone od podstaw. Okno dialogowe z ostrzeżeniem „Katalog projektu już istnieje. Czy mimo to utworzyć?” a następnie Wykonanie właściwej rzeczy byłoby bardziej przyjaznym dla użytkownika zachowaniem Eclipse zamiast zawodzić i wymagać od użytkownika użycia nieoczywistego oddzielnego polecenia ...
smci

Odpowiedzi:


89

Eclipse popełnia błędy, ponieważ jeśli spróbujesz utworzyć projekt w katalogu, który istnieje, Eclipse nie wie, czy jest to rzeczywisty projekt, czy nie - więc popełnia błędy, oszczędzając Ci pracę!

Masz więc dwa rozwiązania:

  1. Przenieś folder counter_srcw inne miejsce, a następnie utwórz projekt (który utworzy katalog), a następnie zaimportuj pliki źródłowe z powrotem do nowo utworzonego counter_src.

  2. Kliknij prawym przyciskiem myszy eksplorator projektów i zaimportuj istniejący projekt, wybierz C:\Users\Martin\Java\Counter\jako katalog główny. Jeśli Eclipse zobaczy projekt, będziesz mógł go zaimportować.


2
Jasne, ale okno dialogowe z ostrzeżeniem „Katalog projektu już istnieje. Czy mimo to utworzyć?” a następnie Wykonanie właściwej rzeczy byłoby bardziej przyjaznym dla użytkownika zachowaniem Eclipse zamiast niepowodzeniem i wymaganiem od użytkownika użycia nieoczywistego oddzielnego polecenia ...
smci

92

Tak więc miałem ten sam problem, ale próbowałem zaimportować kod Androida za pomocą menu „Importuj…”. Gdy żadne z powyższych dwóch rozwiązań nie działało na Eclipse Juno:

  • Eclipse -> Plik -> Importuj -> Ogólne -> Istniejący projekt do obszaru roboczego (UWAGA: NIE „ISTNIEJĄCY PROJEKT ANDROIDOWY” )

  • (Projekty powinny być importowane poprawnie, ale powinny zawierać błędy. Musimy teraz dołączyć SDK do projektu)

  • Kliknij prawym przyciskiem myszy projekt, Właściwości-> Android-> Project Build Target Wybierz odpowiedni cel kompilacji (w razie wątpliwości użyj 4.0.3 w projekcie jest nowy i użyj 2.2, jeśli projekt jest stary)

  • Kliknij OK

Po odbudowie projektu wszystko powinno wrócić do porządku.

(Zostało to napisane, gdy Eclipse Indigo było modne i mogą nastąpić zmiany, gdy Google zaktualizuje swoje narzędzia, aby pokryć narożne przypadki).


8
Część „NIE ISTNIEJĄCY PROJEKT ANDROIDA” była przyczyną moich problemów. +1 za odpowiedź, która rozwiązała problem; dzięki.
steveha

1
„Existing Project Into Workspace” nie widzi projektu Android
18446744073709551615

Działa to tylko dla projektów, które są już projektami Eclipse, a nie dla żadnego „istniejącego kodu Androida”. Próbuję zaimportować projekt systemu Android tylko z pliku AndroidManifest.xml. Zaznaczenie pola „Kopiuj projekty do obszaru roboczego” umożliwiło kontynuację procesu, ale usunęło plik AndroidManifest.xml i utworzyło zduplikowane projekty z nowymi nazwami. Ostatnią rzeczą, która w końcu zadziałała najlepiej, było dla mnie zaimportowanie kodu, gdy projekty znajdowały się poza moim WS, a następnie usunięcie ich z Eclipse, przeniesienie ich do WS i ponowne zaimportowanie jako „Istniejące projekty Eclipse” (opisane powyżej). Powinien zostać uznany za błąd.
Neil Traft

2
Ten krok pracował Eclipse -> File -> Import -> General -> Existing Project Into Workspace (NOTE: NOT 'EXISTING ANDROID PROJECT')Thanks
Naruto

29

Upuściłeś projekt w swoim obszarze roboczym, a następnie próbujesz go zaimportować, to jest problem.

Ma to dwa rozwiązania:

1. Więcej folderu projektu poza obszarem roboczym w innym miejscu, a następnie spróbuj.

2. Idź doFile ---> new Project ---> Select the existing project radio button ---> browse to the project folder in your workspace ---> finish

Edytowano

Załóżmy, że D: \ MyDirectory \ MyWorkSpace - ścieżka do Twojego obszaru roboczego

Upuść projekt, który chcesz zaimportować do Eclipse w folderze MyDirectory Nie w MyWorkSpace i spróbuj.


Ale jeśli przeniosę katalog mojego obszaru roboczego 1 z powrotem i spróbuję… to teraz działa… zobacz moją oryginalną wiadomość powyżej dotyczącą poziomów itp.
Martin

22

W moim przypadku zaznaczenie check-boxu

„Kopiuj projekt do obszaru roboczego”

załatwił sprawę.


3

po prostu „CUT” folder projektu i przenieś go z katalogu obszaru roboczego i wykonaj następujące czynności

file=>import=>(select new directory)=> mark (copy to my workspace) checkbox 

i gotowe!


3

To też zajęło mi trochę czasu, zanim to zrozumiałem.

Rozwiązanie:

Aby utworzyć nowy projekt Maven w istniejącym obszarze roboczym, po prostu zaznacz pole wyboru „ Użyj domyślnej lokalizacji obszaru roboczego ” ( zignoruj ​​zawartość wyszarzonej lokalizacji ).

Nazwa projektu zostanie określona przez identyfikator artefaktu w kroku 2 kreatora tworzenia.

Rozumowanie:

Było to tak zagmatwane, ponieważ w moim przypadku, ponieważ kiedy wybrałem utworzenie nowego projektu Maven: domyślna lokalizacja obszaru roboczego jest zaznaczona i bezpośrednio przechodzi do niej wyszarzone pole tekstowe „Lokalizacja” miało lokalizację obszaru roboczego + istniejący projekt, którego szukałem w, zanim zdecydujesz się utworzyć nowy projekt Maven. (tj .: Lokalizacja = „[ścieżka obszaru roboczego] / ostatnio oglądany projekt”)

Dlatego odznaczyłem domyślne pole lokalizacji obszaru roboczego i wpisałem w „[ścieżka obszaru roboczego] / nowy projekt”, co nie zadziałało, ponieważ eclipse oczekuje, że [ścieżka obszaru roboczego] będzie inna niż domyślna ścieżka. (W przeciwnym razie wybralibyśmy pole wyboru domyślnego obszaru roboczego).


1

W moim przypadku kliknięcie pola wyboru „importuj projekt do obszaru roboczego” naprawiło błąd, mimo że projekt znajdował się już w folderze obszaru roboczego i nie został przeniesiony przez zaćmienie.


0

FWIW:

Żadna z pozostałych sugestii nie zadziałała dla mnie. Wcześniej utworzyłem projekt o tej samej nazwie, który następnie usunąłem. Odtworzyłem podstawowe pliki-źródłowe (używając PhoneGap) - co nie tworzy projektu "eclipse". Następnie próbowałem utworzyć projekt systemu Android przy użyciu istniejących plików źródłowych, ale nie powiodło się z tym samym komunikatem o błędzie, co sugeruje oryginalne pytanie.

Rozwiązaniem dla mnie było przeniesienie folderu źródłowego i plików poza obszar roboczy i użycie tej samej opcji, ale tym razem zaznacz opcję kopiowania plików do obszaru roboczego w kreatorze.


0

Wiem, że to jest starsze, ale chciałem wnieść inne możliwe rozwiązanie.

Jeśli chcesz zachować lokalizację projektu, tak jak ja, okazało się, że skopiowanie pliku .project z innego projektu do katalogu projektu, a następnie edycja pliku .project, aby nadać mu odpowiednią nazwę, a następnie wybranie opcji Importuj istniejące projekty do obszaru roboczego zadziałało dla mnie.

W systemie Windows użyłem monitora plików, aby zobaczyć, co robi Eclipse, i po prostu wyświetlał błąd z nieznanego powodu podczas próby utworzenia pliku .project. Więc zrobiłem to ręcznie i zadziałało.


0

Przejdź do aktualnego menu PLIK i utwórz nowy ogólny projekt.

Jeśli typ projektu nie jest rozpoznawany, co uniemożliwia działanie jednej z tych metod importu, spróbuj tego. Po dodaniu projektu ogólnego możesz dodać obsługę dowolnego języka, którego potrzebujesz.


0

Wystąpił ten błąd podczas próby utworzenia nowego projektu Eclipse w nowo sklonowanym folderze repozytorium Git.

To zadziałało dla mnie:

1) sklonuj repozytorium Git (w moim przypadku było to do podfolderu domyślnego obszaru roboczego Eclipse)

2) Utwórz nowy projekt Eclipse w domyślnym obszarze roboczym (jeden poziom powyżej sklonowanego folderu repozytorium Git)

3) wyeksportuj nowy projekt Eclipse z domyślnego obszaru roboczego do sklonowanego katalogu repozytorium:

a) right click on project --> Export --> General --> File System
b) select the new Eclipse project
c) set the destination directory to export to (as the Git repo folder)

4) usuń projekt Eclipse z obszaru roboczego (ponieważ nadal jest to ten, który używa domyślnego obszaru roboczego)

right click on project and select "Delete"

5) otwórz wyeksportowany projekt Eclipse z katalogu repozytorium Git

a) File --> Open Project from File System or Archive
b) set the "Import source" folder as the Git repo folder
c) check the project to import (that you just exported there)
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.