Eclipse (3.4.2 mit PyDev) behandelt nicht synchronisierte Ressourcen (Dateien, die außerhalb der IDE bearbeitet wurden) anders als andere von mir verwendete IDEs, bei denen nur Ressourcen mit geöffneten Editoren als nicht synchron betrachtet werden . In Eclipse kann jede Ressource nicht mehr synchron sein.
Das heißt, wenn ich eine Suche durchführe, nachdem sich eine Datei außerhalb von Eclipse geändert hat, wird ein Fehlerdialog angezeigt, in dem mir mitgeteilt wird, dass Dateien nicht synchron sind, auch wenn keine Editoren geöffnet sind. Soweit ich das beurteilen kann, gibt es keinen globalen Aktualisierungsbefehl. Daher muss ich die Projektnamen (ich habe mehrere Projekte) im Fehlerdialog lesen und für jedes einen Rechtsklick + Aktualisieren ausführen.
Ich habe die Refresh Automatically
Einstellung eingecheckt Settings > General > Workspace
, aber das hat keine Auswirkung. Gibt es eine Möglichkeit, Eclipse dazu zu bringen, immer nur nicht aktive Ressourcen von der Festplatte zu laden?
Antworten:
Dieses Problem wird in Eclipse 3.7 (Indigo) behoben. Während " Automatisch aktualisieren " die Ressourcen möglicherweise wieder synchronisiert, ist der Aktualisierungs-Hook nur für Windows vorhanden. Unter Linux und Mac OS muss das Dateisystem daher regelmäßig abgefragt werden.
Ab 3.7 gibt es eine neue Einstellung
Settings > General > Workspace > Refresh On Access
(auch bekannt als Lightweight Refresh). Diese Einstellung bewirkt, dass Eclipse Ressourcen automatisch aktualisiert, wenn festgestellt wird, dass sie nicht synchron sind. Beim Öffnen, Lesen oder Durchsuchen von Dateien wird verhindert, dass nicht synchronisierte Fehler auftreten.Siehe auch: https://bugs.eclipse.org/303517
quelle
Ich denke, wenn Sie im Projektexplorer auf den Projektknoten klicken und F5 drücken oder mit der rechten Maustaste klicken und Aktualisieren auswählen, werden alle Ressourcen für dieses Projekt aktualisiert. Wenn Sie bei gedrückter STRG-Taste auf mehrere Projekte klicken, sollten Sie in der Lage sein, mehrere Projekte gleichzeitig zu aktualisieren.
Ein einziger Klick auf ein Projekt, STRG + A, um alles auszuwählen, und ein F5 sollten genau das tun, was Sie brauchen - alles aktualisieren.
Ich muss das testen, wenn ich die Chance dazu bekomme, aber ich glaube, so habe ich ähnliche Probleme in der Vergangenheit überwunden.
Mir ist aufgefallen, dass diese Antwort routinemäßig abgelehnt wird. Ich möchte darauf hinweisen, dass sich die Frage auf eine bestimmte Version von Eclipse bezieht: 3.4.2. Bis zur Version 3.7 Indigo of Eclipse gab es keine automatische Methode, um nicht synchronisierte Ressourcen zu aktualisieren , wie in James Blackburns Antwort erwähnt . Die in dieser Antwort beschriebene Methode ist die einzige Methode, um dies in Version 3.4.2 (und jeder anderen Version vor 3.7 Indigo) zu erreichen.
quelle
In der Eclipse-IDE treten häufig Probleme mit der Nicht-Synchronisierung auf. Daher müssen Sie diese Option aktivieren. Fenster -> Einstellungen -> Arbeitsbereich -> Aktualisieren mit nativen Hooks oder Abfragen.
quelle
.css
Datei, wenn ich diese Datei beispielsweise über einen externen Editor aktualisiere, während ich die Server-App über Eclipse ausführe. Um dies zu beheben, habe ich dieses Plugin verwendet, mit dem das Kontrollkästchen tatsächlich funktioniert. Siehe diese Antwort .Neon.3 Release (4.6.3)
Es gibt eine globale Aktualisierung - haben Sie nichts (oder alles) im Paket-Explorer ausgewählt und drücken Sie F5 (oder klicken Sie mit der rechten Maustaste auf den leeren Bereich und wählen Sie Aktualisieren). Dies kann natürlich ziemlich lange dauern, wenn Sie große Projekte haben.
quelle
Eclipse Helios verfügt über eine integrierte Aktualisierungsfunktion unter Einstellungen> Allgemein> Arbeitsbereich. Es befindet sich an derselben Stelle, an der Sie automatische Builds deaktivieren. Wählen Sie Automatisch aktualisieren. Ein Plugin mit der gleichen Funktionalität ist das Filesync Plugin von Andrei Loskutov. Die Adresse der Update-Site lautet: http://andrei.gmxhome.de/eclipse/ . Wählen Sie während der Installation Eclipse 3.5-3.7-Plugins> FileSync.
quelle
Angesichts der Tatsache, dass Java 7 eine API für Dateisystem-Hooks hat, würde man denken, dass die Aktualisierung in Eclipse besser gehandhabt werden könnte.
Bearbeiten: Tatsächlich gibt es ein Plugin, das diesen Mechanismus verwendet: https://github.com/psxpaul/EclipseJava7Refresher
quelle
Vielleicht sollten Sie eine Feature-Anfrage auf der Eclipse-Site hinzufügen:
https://bugs.eclipse.org/bugs/
Ich denke, es wäre eine großartige Idee, eine Präferenz für das automatische Aktualisieren veralteter Ressourcen hinzuzufügen.
quelle
Eine globale Aktualisierung fehlt in Eclipse wirklich. Das obige Verfahren zum Auswählen aller Projekte und anschließenden Ausführen der Aktualisierung (z. B. F5) funktioniert nicht, wenn Sie Projekte in Ihrer Auswahl geschlossen haben. Das heißt, wenn Sie die Hälfte Ihrer vielen Projekte wie ich geschlossen haben, klicken Sie bei gedrückter Strg-Taste durch Ihre Dutzende von Projekten. Das ist ziemlich schmerzhaft. Ich wünschte, Eclipse würde geschlossene Projekte einfach ignorieren.
quelle
Die globale Aktualisierung ist in Eclipse ohne Plugins und ohne Auswahl jedes Projekts in Ihrem Arbeitsbereich vorhanden.
Grundsätzlich müssen Sie alles in Ihrem Projektexplorer abwählen und F5 drücken. Klicken Sie dazu bei gedrückter Strg-Taste auf die ausgewählte Ressource im Projektexplorer und drücken Sie F5.
quelle
Ja, Refresh on Access ist längst überfällig. Diese Antworten auf diese und ähnliche Anfragen deuten normalerweise darauf hin, dass die globale automatische Aktualisierung aktiviert werden kann, was bei großen Remote-Projekten einige Zeit in Anspruch nehmen kann. In der Tat gibt es diejenigen, die sagen würden, dass Refresh on Access das ursprüngliche (<3.x) Standardverhalten gewesen sein sollte ...
quelle
Ich habe es geschafft, dieses Problem zu lösen, indem ich eine neue "externe Tool" -Laufkonfiguration erstellt habe, die eine leere Batchdatei ausführt. In der Ausführungskonfiguration kann der Arbeitsbereich nach Abschluss aktualisiert werden. Dann habe ich mit Practically Macro ein Makro erstellt, das 1) die letzte externe Tool-Run-Konfiguration ausführt (den Arbeitsbereich aktualisiert) und 2) die letzte Debug-Run-Konfiguration ausführt (meine App ausführt). Wenn Sie "Konsole zuweisen" deaktivieren, wird der vollständige Eintrag für das externe Tool nicht im Debug-Fenster angezeigt.
quelle
Auch wenn die von anderen Personen vorgeschlagenen Lösungen tatsächlich korrekt sind, haben Sie ein " Alle aktualisieren " -Plugin für Eclipse. Fügen Sie einfach die Update-Seite zu Ihrer Eclipse-Liste der Update-Sites hinzu, um sie in Ihrer IDE zu installieren.
quelle
Zum Starten gibt es eine Option zum automatischen Aktualisieren von Dateien in
Window -> Preferences -> General -> Startup and Shutdown -> Refresh workspace on startup
Klicken Sie darauf, um einen "Neuanfang" in Eclipse zu starten. :) :)
Version: Eclipse 4.12
quelle