Ich entwickle Java-Code mit Eclipse und erhalte regelmäßig folgende Meldung:
Die Ressource ist nicht mit dem Dateisystem synchron.
Rechtsklick> Aktualisieren löscht dies immer.
Aber warum kann Eclipse nicht automatisch aktualisiert werden, wenn dieser Zustand gefunden wird? Gibt es Fälle, in denen die Ressource nicht synchron sein soll?
Wenn solche Bedingungen vorliegen und sie nicht für meine Arbeit gelten, gibt es eine Möglichkeit, Eclipse automatisch zu aktualisieren, wenn dieser Status auftritt? (Ich schätze, dass es in der normalen Entwicklung so wenig wie nötig aktualisiert werden sollte, um die Leistung für menschliche Entwickler zu steigern.)
UPDATE (2012-06-25): Mein letztes Update (Version: Indigo Release Build-ID: 20110615-0604) zeigt keine Einstellungen mehr an - Allgemein - Arbeitsbereich - Automatisch aktualisieren Es gibt eine Option "Beim Zugriff aktualisieren" - sollte ich diese verwenden?
Antworten:
Sie können dies unter Fenster - Einstellungen - Allgemein - Arbeitsbereich - Automatisch aktualisieren aktivieren (als Aktualisieren mit nativen Hooks oder Abfragen in neueren Builds bezeichnet).
Der einzige Grund, warum ich mir vorstellen kann, warum dies nicht standardmäßig aktiviert ist, ist die Leistung.
Das automatische Aktualisieren von Quellordnern kann beispielsweise einen Build des Arbeitsbereichs auslösen. Vielleicht wollen einige Leute mehr Kontrolle darüber.
Auf der Eclipse-Website gibt es auch einen Artikel zur automatischen Aktualisierung.
Grundsätzlich gibt es keinen externen Trigger, der Eclipse über Dateien informiert, die außerhalb des Arbeitsbereichs geändert wurden. Eclipse verwendet vielmehr einen Hintergrundthread, um Dateiänderungen zu überwachen, die möglicherweise zu Leistungsproblemen bei großen Arbeitsbereichen führen können.
quelle
Klicken Sie einfach mit der rechten Maustaste auf die Datei oder das Projekt und klicken Sie auf Aktualisieren. Der Fehler wird verschwinden. Ich hatte auch das gleiche Problem und es hat bei mir funktioniert.
quelle
Fenster -> Einstellungen -> Allgemein -> Arbeitsbereich
quelle
Für die neue Indigo-Version ändern sich die Einstellungen in "Beim Zugriff aktualisieren" und enthalten eine ausführliche Erläuterung: Änderungen des externen Arbeitsbereichs beim Zugriff über den Arbeitsbereich werden automatisch aktualisiert.
Da "Ressource nicht mit dem Dateisystem synchronisiert ist", tritt dieses Problem auf, wenn ich einen externen Arbeitsbereich verwende. Nachdem ich diese Option ausgewählt habe, ist das Problem behoben.
quelle
Das passiert mir die ganze Zeit.
Gehen Sie zum Fehlerprotokoll, suchen Sie die Ausnahme und öffnen Sie einige Ebenen, bis Sie etwas sehen, das eher einer Grundursache ähnelt. Sagt es "Ressource ist nicht synchron mit dem Dateisystem"?
Beim Umbenennen von Paketen muss Eclipse natürlich Dateien im Dateisystem verschieben. Anscheinend wird später festgestellt, dass etwas, von dem es glaubt, dass es bereinigt werden muss, umbenannt wurde, es nicht finden kann und eine Ausnahme auslöst.
Es gibt ein paar Dinge, die Sie versuchen könnten. Gehen Sie zunächst zu Fenster: Einstellungen, Arbeitsbereich und aktivieren Sie "Automatisch aktualisieren". Theoretisch sollte dies das Problem beheben, aber für mich war dies nicht der Fall.
Zweitens, wenn Sie ein umfangreiches Refactoring mit Unterpaketen durchführen, führen Sie die Unterpakete einzeln von unten nach oben aus und aktualisieren Sie sie explizit mit dem Dateisystem, nachdem jedes Unterpaket umbenannt wurde.
Drittens ignorieren Sie einfach den Fehler: Wenn das Fehlerdialogfeld angezeigt wird, klicken Sie auf Abbrechen, um die teilweise Änderung beizubehalten, anstatt sie zurückzusetzen. Versuchen Sie es immer wieder, und Sie werden möglicherweise feststellen, dass Sie den gesamten Vorgang mit mehreren Wiederholungsversuchen durchführen können.
quelle
Wenn dies beim Versuch auftritt, einen Ordner zu löschen (unter * nix) und das Aktualisieren nicht hilft, öffnen Sie ein Terminal und suchen Sie nach einem Symlink unter dem Ordner, den Sie löschen und manuell entfernen möchten. Dies löste meine Probleme.
quelle
Wenn Sie einen Eclipse-Arbeitsbereich in einer übersichtlichen Ansicht öffnen und versuchen, das Projekt umzubenennen, wird häufig die Popup-Warnung angezeigt ... "Ressourcenprojekt ist nicht mit dem Dateisystem synchronisiert". Wenn das Problem durch Aktualisieren des Projekts nicht behoben werden kann, führen Sie die folgende Problemumgehung aus: a. Arbeitsbereich öffnen, OHNE in einer Ansicht zu sein b. Wählen Sie das Projekt im Projektexplorer aus. C. ClearCase -> Projekt verknüpfen (Projekt sollte jetzt wie Projekt [] aussehen) d. Klicken Sie mit der rechten Maustaste auf Projekt -> Aktualisieren (vob-Unterordner sollten jetzt leer sein). E. Klicken Sie mit der rechten Maustaste auf Projekt -> Umbenennen ... f. Neuen Namen eingeben
Jetzt können Sie den Arbeitsbereich schließen, in einer Ansicht erneut öffnen und das Projekt aktualisieren. Sie können das Projekt auch trennen, wenn Sie möchten, dass das Projekt nicht mit dem Vob verknüpft wird.
quelle
Ein kleiner Hinweis. Die Meldung wird häufig während des Umbenennungsvorgangs angezeigt. Die schnelle Problemumgehung für mich ist das Drücken
Ctrl-Y
(Verknüpfung wiederholen) nach Bestätigung der Nachricht. Dies funktioniert nur, wenn die Umbenennung eine einzelne Datei betrifft.quelle
Ctrl-Y
dasCtrl-Shift-Z
.Ctrl-Y
Wenn Sie ein regulärer Eclipse-Benutzer sind, ist dieser Fehler möglicherweise mehrmals aufgetreten. Der Fehler lautet einfach: "Sie haben Änderungen an Dateien in Ihrem Arbeitsbereich von außerhalb von Eclipse vorgenommen." Die einfachste Lösung wäre, das Projekt auszuwählen und F5 zu drücken (Rechtsklick -> Aktualisieren).
Wenn Sie weitere Erklärungen benötigen, können Sie diese Website lesen
quelle
Ich konnte diesen Fehler weder durch Aktualisieren noch durch Aktivieren der Arbeitsbereichsfunktion "Native Polling" beheben. Es stellte sich heraus, dass mein Projekt auch in zwei Fällen von Eclipse geöffnet wurde. Sobald ich die andere Instanz geschlossen habe, ist der Fehler behoben. Stellen Sie daher sicher, dass Ihr Projekt nur an einer Stelle geöffnet wird, wenn dieser Fehler auftritt.
quelle