Frage

Eclipse (3.4.2 mit Pydev) befasst sich mit außergewöhnlichen Ressourcen (Dateien, die außerhalb der IDE bearbeitet wurden) unterschiedlich von anderen IDEs, die ich verwendet habe, bei denen nur Ressourcen mit geöffneten Redakteuren als nicht synchronisiert betrachtet werden . In Eclipse kann jede Ressource aus der Synchronisierung ausgehen.

Dies bedeutet, dass ich bei der Durchführung einer Suche nach einer Datei außerhalb von Eclipse ein Fehlerdialog erhalte, in dem mir die Dateien nicht synchronisiert sind, auch wenn sie keine geöffneten Redakteure haben. Soweit ich das beurteilen kann, gibt es keinen globalen Aktualisierungsbefehl, daher bin ich gezwungen, die Projektnamen (ich habe mehrere Projekte) im Fehlerdialog zu lesen und für jeden von einem Aktualisierung mit rechter zu klicken.

Ich habe das überprüft Refresh Automatically Einstellung in Settings > General > Workspace, aber das hat keine Wirkung. Gibt es eine Möglichkeit, Eclipse immer nur nicht aktive Ressourcen von der Festplatte zu laden?

War es hilfreich?

Lösung

Dieses Problem wird in Eclipse 3.7 (Indigo) behoben. Während "Automatisch aktualisieren"Bringt schließlich die Ressourcen wieder in Synchronisation ein, der Refresh -Hook ist nur für Windows vorhanden. Unter Linux und Mac OS muss er das Dateisystem regelmäßig befragen.

Ab 3.7 gibt es eine neue Präferenz Settings > General > Workspace > Refresh On Access (auch bekannt als leichte Aktualisierung). Diese Präferenz bewirkt, dass Eclipse die Ressourcen automatisch aktualisiert, wenn sie feststellen, dass sie "nicht synchronisiert" sind. Beim Öffnen, Lesen oder Durchsuchen von Dateien verhindert es, dass außergewöhnliche Fehler auftreten.

Siehe auch: https://bugs.eclipse.org/303517

Andere Tipps

Ich denke, wenn Sie im Project Explorer auf den Projektknoten klicken und F5 drücken oder mit der rechten Maustaste aktualisieren und aktualisieren möchten, werden alle Ressourcen für dieses Projekt aktualisiert. Wenn Sie auf mehrere Projekte klicken, sollten Sie auch mehrere Projekte gleichzeitig aktualisieren können.

Ein einzelnes Klick auf ein Projekt, ein Strg+A, um alles auszuwählen, und ein F5 sollte genau das tun, was Sie brauchen - alles aktualisieren.

Ich muss dies testen, wenn ich die Chance bekomme, aber ich glaube, ich habe in der Vergangenheit ähnliche Probleme überwunden.


Mir ist aufgefallen, dass diese Antwort routinemäßig abgestimmt wird. Ich möchte darauf hinweisen, dass sich die Frage auf eine bestimmte Version von Eclipse bezieht: 3.4.2. Es gab tatsächlich keine automatische Methode, um außer Synchronisierungsressourcen zu aktualisieren bis Version 3.7 Indigo der Sonnenfinsternis, wie erwähnt In James Blackburns Antwort. Die in dieser Antwort beschriebene Methode ist die einzige Methode, um dies in Version 3.4.2 (und jede andere Version vor 3.7 Indigo) zu erreichen.

Das Problem der Synchronisierung ist in der Eclipse -IDE üblich, sodass Sie diese Option Windows -> Präferenz -> Arbeitsbereich -> Aktualisieren Sie mit nativen Haken oder Umfragen.

Es gibt eine globale Aktualisierung - haben im Paket Explorer nichts (oder alles) ausgewählt und drücken Sie F5 (oder klicken Sie mit der rechten Maustaste auf den leeren Speicherplatz und wählen Sie Aktualisierung). Dies könnte natürlich ziemlich lange dauern, wenn Sie große Projekte haben.

Eclipse Helios besitzt eine integrierte Aktualisierungsfunktion in den Vorlieben> Allgemein> Arbeitsbereich. Es befindet sich an derselben Stelle, an der Sie automatische Builds deaktivieren. Wählen Sie automatisch Aktualisierung. Ein Plugin mit der gleichen Funktionalität ist das Filesync -Plugin von Andrei Loskutov. Die update Site -Adresse lautet: http://andrei.gmxhome.de/eclipse/. Wählen Sie während der Installation Eclipse 3.5-3.7 Plugins> filesync.

Angesichts der Tatsache, dass Java 7 eine API für Dateisystemhaken hat, würde man denken, dass die Aktualisierung in Sonnenfinsternis besser behandelt werden könnte.

Bearbeiten: Eigentlich gibt es ein Plugin, das diesen Mechanismus verwendet: https://github.com/psxpaul/eclipsejava7refresher

Vielleicht sollten Sie eine Funktionsanforderung 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 die automatische Erfrischung veralteter Ressourcen hinzuzufügen.

Eine globale Aktualisierung fehlt in Sonnenfinsternis wirklich. Die obige Prozedur bei der Auswahl aller Projekte und der Ausführung von Aktualisierung (z. B. F5) funktioniert nicht, wenn Sie in Ihrer Auswahl geschlossene Projekte enthalten haben. Dies bedeutet, dass Sie, wenn Sie 1/2 Ihrer vielen Projekte wie ich geschlossen haben, manuell durch Ihre Dutzenden von Projekten klicken. Das ist ziemlich schmerzhaft. Ich wünschte, Eclipse würde geschlossene Projekte einfach ignorieren.

Die globale Aktualisierung existiert tatsächlich in einer einfachen Sonnenfinsternis ohne Plugins und ohne jedes Projekt in Ihrem Arbeitsbereich aus.

Grundsätzlich müssen Sie alles in Ihrem Projekt Explorer auswählen und F5 treffen. Dazu klicken Sie dazu auf die ausgewählte Ressource im Project Explorer und klicken Sie auf F5.

Ja, der Aktualisierung des Zugangs ist längst überfällig ... diese Antworten darauf und ähnliche Anfragen werden normalerweise vorgeschlagen, die globale Auto-Refresh zu ermöglichen, was für große Remote-Projekte Alter dauern könnte. Tatsächlich gibt es diejenigen, die sagen würden, dass die Aktualisierung des Zugriffs das ursprüngliche (<3.x) Standardverhalten sein sollte ...

Ich habe es geschafft, dies zu lösen, indem ich eine neue "externe Tool" -Rauslaufkonfiguration erstellt habe, die eine leere Batch -Datei ausführt. In der Auslaufkonfiguration können Sie den Arbeitsbereich nach Abschluss aktualisieren lassen. Anschließend habe ich ein Makro mit praktisch Makro erstellt, das 1) die letzte externe Tool -Auslaufkonfiguration ausführt (Aktualisieren des Arbeitsbereichs) und dann 2) die letzte Debug -Auslaufkonfiguration ausführt (Ausführen meiner App). Wenn Sie die "Zuordnung" Konsole "deaktivieren, wird der abgeschlossene externe Tool -Eintrag im Debug -Fenster nicht angezeigt.

Auch wenn die von anderen vorgeschlagenen Lösungen in der Tat richtig sind, haben Sie eine "Alle erfrischen"Plugin für Eclipse. Fügen Sie einfach das hinzu Seite aktualisieren In Ihrer Eclipse -Liste von Update -Sites, um sie in Ihrer IDE zu installieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top