Dlaczego Eclipse Java Package Explorer wyświetla znak zapytania w niektórych klasach?

96

W Eksploratorze pakietów Java Eclipse Helios widzę ikony klas Java wyświetlające mały znak zapytania po prawej stronie litery „J”, na przykład [J?]. Ta ikona jest wyświetlana na każdej klasie w jednym pakiecie w moim projekcie, ale nie mogę znaleźć wyjaśnienia w dokumentacji.

wprowadź opis obrazu tutaj

Spodziewam się, że w pewnym momencie znikną i zostaną zastąpione małymi pomarańczowymi prostokątami. (Z których też nie jestem pewien ich znaczenia, ale mniej martwię się ich konotacją). Przypuszczam, że to pytanie prowadzi do większego, czy któreś z tych ikon są gdzieś zdefiniowane razem?

dfdumaresq
źródło

Odpowiedzi:

133

Oznacza to, że klasa nie została jeszcze dodana do repozytorium.

Jeśli Twój projekt został wyewidencjonowany (najprawdopodobniej projekt CVS) i dodałeś nowy plik klasy, będzie on miał ?ikonę.

W przypadku innych dekoracji etykiet CVS, sprawdź http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.platform.doc.user/reference/ref-cvs-decorations.htm

Aleks Felipe
źródło
O tak! Dzięki, to odpowiedziała na moje pytanie. Przekazałem pakiet i klasę do CVS i znaki zapytania zniknęły.
dfdumaresq
27

W przypadku niektórych wtyczek do kontroli wersji oznacza to, że plik lokalny nie został jeszcze udostępniony repozytorium kontroli wersji. (W mojej instalacji obejmuje to wtyczki do CVS i git, ale nie do Perforce).

Czasami możesz zobaczyć listę tych dekoracji w preferencjach wtyczki w sekcji Team / X / Label Decorations , gdzie X opisuje system kontroli wersji.

Na przykład dla CVS lista wygląda następująco:

wprowadź opis obrazu tutaj

Te ozdoby są dodawane do ikon obiektów dostarczanych przez Eclipse. Na przykład, oto tabela ikon środowiska programistycznego Java .

Andy Thomas
źródło
To rzeczywiście zapewnia mi listę wszystkich ikon. Dziękuję Ci!
dfdumaresq
Nie można tego znaleźć, wyszukując w pomocy dotyczącej zaćmienia. Strony pomocy dotyczące dekoracji etykiet podają tylko ogólne informacje i odsyłają do strony Preferencje w celu włączania / wyłączania określonych, bez pokazywania wizualnego wyglądu.
Cincinnati Joe
21

Wygląda na to, że używasz Subclipse; czy to jest poprawne? Jeśli tak, to w odpowiedzi Tima Stone'a znajduje się świetna lista dekoratorów i ich opisów .

Oto odpowiedni fragment dla Twojej sprawy:

Niewersjonowany plik- Plik nie podlega kontroli wersji. Są to zazwyczaj nowe pliki, których jeszcze nie zapisałeś w repozytorium.
Zsynchronizowany plik- Plik bez zmian lokalnych.

Wyskakuje
źródło
Używam eksploratora repozytorium CVS (nie jestem pewien, czy używa Subclipse), ale tak, to świetna lista. Dzięki!
dfdumaresq
6

W włączony projekt mały znak zapytania (?) oznacza, że ​​plik nie został jeszcze dodany do repozytorium SVN.

Mały pomarańczowy prostokąt wskazuje, że plik został zatwierdzony w repozytorium.

Gwiazdka (*) oznacza zmianę lokalną.

Lachezar Balev
źródło
4

te ikony są sposobem Egit na pokazanie statusu bieżącego pliku / folderu w git. Możesz to sprawdzić:

obraz przedstawiający ikony Eclipse dla Egit

  • dirty (folder) - Co najmniej jeden plik poniżej folderu jest brudny; oznacza to, że ma zmiany w drzewie roboczym, których nie ma ani w indeksie, ani w repozytorium.
  • śledzone - zasób jest znany w repozytorium Git. nieśledzony - zasób nie jest znany w repozytorium Git.
  • ignored - zasób jest ignorowany przez dostawcę zespołu Git. Tutaj istotne są tylko ustawienia preferencji w sekcji Zespół -> Ignorowane zasoby i flaga „pochodne”. Plik .gitignore nie jest brany pod uwagę.
  • dirty - zasób ma zmiany w drzewie roboczym, których nie ma ani w indeksie, ani w repozytorium.
  • staged - zasób zawiera zmiany, które są dodawane do indeksu. Nie chodzi o to, że dodawanie do indeksu jest w tej chwili możliwe tylko w oknie dialogowym zatwierdzenia w menu kontekstowym zasobu.
  • częściowo staged - zasób ma zmiany, które są dodawane do indeksu oraz dodatkowo zmiany w drzewie roboczym, które nie znajdują się ani w indeksie, ani w repozytorium.
  • dodane - zasób nie jest jeszcze śledzony, ale został dodany do repozytorium Git.
  • usunięte - zasób jest przygotowywany do usunięcia z repozytorium Git.
  • konflikt - istnieje konflikt scalania dla pliku.
  • zakładaj-poprawne - zasób ma flagę „zakładaj niezmienione”. Oznacza to, że Git przestaje sprawdzać pliki drzewa roboczego pod kątem możliwych modyfikacji, więc musisz ręcznie anulować ustawienie tego bitu, aby poinformować Git o zmianie pliku drzewa roboczego. To ustawienie można włączyć za pomocą akcji menu Zespół-> Załóż niezmienione (lub w wierszu poleceń z git update-index - zakładaj-niezmienione).
CommonSenseCode
źródło
0

Dzieje się tak, ponieważ Twój projekt został połączony z repozytorium git-hub, a plik ze znakiem zapytania nie został jeszcze dodany. jeśli chcesz usunąć ten znak, będziesz musiał dodać ten plik do repozytorium git-hub.

Muhammad Aamir Khan
źródło