Freigeben der Eclipse-Konfiguration für verschiedene Arbeitsbereiche

130

Ich verwende Eclipse (PDT) als primäre IDE auf verschiedenen Computern. (wie zu Hause, Laptop, im Büro usw.). Wie kann ich die Eclipse- und Projektkonfiguration pragmatisch zwischen mehreren Computern teilen? Sollte ich sie versionieren oder gibt es eine einfachere Möglichkeit, dies zu tun?

Wie stellen Sie sicher, dass alle Ihre Computer gleich gut und alt sind?

erenon
quelle
Ich hatte alle möglichen Probleme, Code mit Dropbox in einem einzigen Arbeitsbereich zu teilen. Ich würde mich dazu neigen, mehrere Arbeitsbereiche zu haben, einen für jeden Computer, und die Gruppe von Arbeitsbereichen mithilfe von Dropbox synchronisieren.
Djangofan
3
Alte Frage, die ich kenne, aber für die Nachwelt fand ich diesen Blog-Beitrag sehr nützlich: mcuoneclipse.wordpress.com/2012/04/04/… (Es ist nicht mein Beitrag :-)
Stewart
Es gibt immer Komplikationen bei Windows-Umgebungen. Das Einchecken der Arbeitsbereichseinstellungen in die Quellcodeverwaltung ist keine Antwort. Die Einstellungen für die Quellcodeverwaltung sind Teil der Einstellungen für den Arbeitsbereich.
Chris Topinka

Antworten:

4

Sie können tatsächlich viele projektspezifische Einstellungen festlegen, die in die Quellcodeverwaltung eingecheckt werden können. Bei kleinen Projekten funktioniert das sehr gut. Für größere Projekte haben wir uns für eine einzige Datei entschieden, die wir für alle unsere Projekte verwendet haben, und in ein separates "Assets" -Projekt eingecheckt, das die Dinge enthält, die Entwickler benötigen, um mit der Arbeit an unserem Projekt zu beginnen. Dies beinhaltete auch Dinge wie Lizenzen und andere erforderliche Dateien.

Topher Fangio
quelle
45
Obwohl dies die akzeptierte Antwort ist, sollten Sie auf jeden Fall nach unten scrollen und sich die anderen Antworten ansehen, da sie zusätzliche Informationen enthalten.
Topher Fangio
1
@erenon - Können Sie diese als akzeptierte Antwort markieren und eine andere, relevantere auswählen? Die anderen enthalten weitaus mehr Informationen, aber ich kann diese Antwort nicht löschen, wenn sie akzeptiert wird.
Topher Fangio
176

Teilen von Eclipse-spezifischen Einstellungen über Arbeitsbereiche hinweg :

  1. Gehe zu ${old_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings
  2. Kopieren Sie alles unter dem obigen Verzeichnis nach ${new_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings

Dadurch wird sichergestellt, dass das ${new_workspace}Gerät dieselbe Konfiguration wie das hat${old_workspace}

Hoffe das hilft. Update bei Problemen.

Peakit
quelle
8
Ich persönlich habe diese Ordner mit Dropbox verknüpft und auch RSE-Profile sind verknüpft. Die Gesamtkonfiguration der Eclipse-Einstellungen kann auch von ide
Anton S
5
Ich fange damit an, aber leider gibt es außerhalb dieses Verzeichnisses noch viele weitere Einstellungen, die ich synchronisieren möchte.
David Harkness
@ DavidHarkness: Bitte erläutern Sie - welche Einstellungen - wo? Sie könnten hier eine Antwort posten - ich frage unter anderem: "Wäre es sicher und genug, um das zu verknüpfen \.metadata\.plugins\org.eclipse.core.runtime\.settings directory?" - zum Höhepunkt: es ist nicht so einfach - das ${old_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settingsenthält auch Arbeitsbereichseinstellungen und hat andere Besonderheiten - siehe meine Analyse hier
Mr_and_Mrs_D
Um den Ordner zu kopieren, verwenden Sie Robocopy: stackoverflow.com/questions/472692/…
weberjn
1
Betrachten Sie Unison, um sie synchron zu halten: cis.upenn.edu/~bcpierce/unison
Alice Purcell
114

Eine weitere Option ist Export / Import:

  1. File->Export...->General->PreferencesAktivieren Sie in Ihrem vorhandenen Arbeitsbereich die Option Alle exportieren und wählen Sie die Datei aus, in der sie gespeichert werden sollen (z. B. prefs.epf).
  2. Starten Sie Eclipse in einem neuen Arbeitsbereich, File->Import...->General->Preferenceswählen Sie Ihre Datei (prefs.epf) aus und aktivieren Sie "Alle importieren"

Für den ursprünglichen Autor dieses Tipps hat das hervorragend funktioniert: Er hat seine Code-Formatierung, seinen Codestil, seine SVN-Repos und seine JSE-Einstellungen importiert.

Bearbeiten: Auf Eclipse Juno funktioniert dies schlecht. Einige Einstellungen werden stillschweigend nicht übertragen, z. B. Speicheraktionen.

Anthony Dahanne
quelle
2
Funktioniert auch mit Eclipse STS (Spring Tool Suite) 3.4
рüффп
Arbeitete an Eclipse Luna
GP Cyborg
1
Man konnte sowohl dies als auch das tun, was Peakit in seiner Antwort sagte. Ich hoffe, diese Kombination von Aktionen wird ausreichen, um wirklich alles zu exportieren .
Nikos
8

Es ist ein relativ neues Projekt, aber es sieht so aus, als ob Eclipse Oomph genau aus diesem Grund erstellt wurde. Mit diesem Tool können Sie eine eindeutige Konfiguration erstellen, die für andere freigegeben werden kann. Ich habe es (noch) nicht benutzt, plane aber:

https://projects.eclipse.org/projects/tools.oomph

HDave
quelle
Yatta Profiles baut auf Oomph / Eclipse Installer auf und erleichtert das Teilen ein wenig.
Bernhard Stadler
1
@BernhardStadler Yatta überträgt keine Einstellungen.
ThomasMcLeod
Yatta kann sich die Standardeinstellungswerte merken - Arbeitsbereichspräferenzen können mit Preference Recorder aufgezeichnet werden, und für Projekteinstellungen benötigen Sie keine zusätzlichen Tools, da Sie sie Ihrem SCM hinzufügen können. Der wichtigste Anwendungsfall ist die Einrichtung eines Ein-Klick-Entwicklungsarbeitsbereichs für Teams mit dem Ziel, die Einrichtungszeiten zu minimieren. Es ist jedoch auch möglich, private Profile zwischen verschiedenen Computern zu synchronisieren. Ich habe es selbst noch nie versucht, aber laut ihrer Webseite ist es möglicherweise möglich, Aktualisierungen von Online-Profilen anzuwenden, sodass es möglich sein sollte, private Online-Profile als Synchronisierungsmechanismus zu verwenden.
Bernhard Stadler
7

Ich musste gleichzeitig an mehreren Arbeitsbereichen arbeiten und jedes Mal, wenn ich einen neuen Arbeitsbereich erstelle, mussten viele Einstellungen vorgenommen werden. Ich habe einen Vorlagenarbeitsbereich erstellt und alle erforderlichen Einstellungen in diesem Vorlagenarbeitsbereich erstellt. Wenn ich einen neuen Arbeitsbereich erstelle, erstelle ich einen Simlink des {new_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settingszu verweisenden Arbeitsbereichs {template_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings. Wenn Sie also eine Voreinstellung in einem der Arbeitsbereiche bearbeiten, wird diese in allen anderen Arbeitsbereichen repliziert.

Ich habe diesen Funktionsalias in meinem .profile erstellt, sodass ich nach dem Erstellen eines neuen Arbeitsbereichs diese Funktion in meiner Eingabeaufforderung mit meinem neuen Arbeitsbereichsnamen als Argument ausführen kann, damit der Link erstellt wird.

function eclset(){
    present_dir=`pwd`;
    cd  {parent_to_workspace}/$1/.metadata/.plugins/org.eclipse.core.runtime ; 
    rm -rf .settings ; 
    ln -s {parent_to_workspace}/template/.metadata/.plugins/org.eclipse.core.runtime/.settings .settings;
    cd $present_dir;
}
Mowgli
quelle
Eigentlich wollte ich das auch (unter Windows) machen - aber es gibt Komplikationen: siehe meine Antwort hier
Mr_and_Mrs_D
3

Ab Eclipse Neon (und möglicherweise auch Mars) können Sie die folgenden zwei Verzeichnisse kopieren, um Ihre Workbench und Einstellungen / Einstellungen für Ihre verschiedenen Arbeitsbereiche freizugeben:

    [workspace]/.metadata/.plugins/org.eclipse.core.runtime/.settings
    [workspace]/.metadata/.plugins/org.eclipse.e4.workbench
Antonio Malcolm
quelle
Wird es wirklich in Neon eingeführt? Gibt es ein Changelog / eine Readme-Datei oder andere Informationen, die dies bestätigen?
Danijel
In der Regel haben Entwickler ein eigenes GIT-Repository, das nicht freigegeben ist. Die Liste lautet also: 1. [Arbeitsbereich] /. Metadaten / .plugins / org.eclipse.core.runtime / .settings - Außer [Arbeitsbereich] /. Metadaten / .plugins /org.eclipse.core.runtime/.settings/org.eclipse.egit.core.prefs 2. [Arbeitsbereich] /. Metadaten / .plugins / org.eclipse.e4.workbench
Timo Riikonen
2

Hier gibt es zwei Fragen. Erstens gibt es Projektdefinitionen, die Projektdateien und projektspezifische Einstellungen. Persönlich mag ich die in meiner Quellcodeverwaltung, da dies das Auschecken eines Projekts und das Einrichten einer IDE viel einfacher macht.

Zweitens haben Sie die Arbeitsbereichseinstellungen. In diesem Bereich werden Sie viele Fragen sehen. Ich schlage vor, einen Blick auf Pulse zu werfen : Es handelt sich um eine erweiterte Eclipse-Distribution, mit der Sie unter anderem Ihre Arbeitsbereichseinstellungen speichern und mit mehreren Computern oder Teammitgliedern synchronisieren können.

zvikico
quelle
1

Sie können die .prefs-Dateien auch ${old_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settingsin einen Ordner namens .settings im Stammordner Ihres Projekts kopieren und dann zu SVN (oder CVS oder ...) hinzufügen.

Auf diese Weise werden die Einstellungen während eines Updates zusammen mit dem Quellcode an alle Entwickler verteilt.

Evvo
quelle
0

Ich hatte das gleiche Problem.

Mein Ansatz: Speichern von Projektdaten in einem Verzeichnis, das von owncloud verwaltet wird

Das Projekt X wird auf Workstation A erstellt, wobei ein benutzerdefinierter Pfad auf ein neues Unterverzeichnis meiner ownCloud-Hierarchie verweist. Der Standardarbeitsbereich befindet sich weiterhin im Dateisystem von A.

Wenn ich an der Workstation BI sitze, öffnen Sie den lokalen Standardarbeitsbereich (lokal auf B) und erstellen Sie ein neues Projekt unter Verwendung der vorhandenen Quellen im "synchronisierten" ownCloud-Verzeichnis.

Klicken Sie einfach auf Aktualisieren, wenn Sie Eclipse starten und die aktuellen Projektdaten haben. Die Synchronisierung wird automatisch im Hintergrund ausgeführt. Seien Sie also vorsichtig, wenn Sie mit dem Schließen von Eclipse fertig sind, und geben Sie ownCloud die Möglichkeit, die neuen Dateien auf den ownCloud-Server hochzuladen.

Tomcat oder andere Server werden lokal ausgeführt. Die Konfiguration wird manuell zwischen den Computern über scp kopiert. Dies geschieht nur, wenn sich das Server-Setup ändert, was nicht sehr häufig der Fall ist.

Ich hatte noch keine Kompatibilitätsprobleme mit NEON 2 (Arch Linux) und NEON 3 (Download eines laufenden Debian Stretch) mit verschiedenen JDKs.

Mit freundlichen Grüßen Armin

armin
quelle
0

Kopieren Sie einfach die Verzeichnisse

${old_workspace}/.metadata/.plugins

von einem bestehenden Projekt zum neuen.

Das hat in (ziemlich einfachen) PHP-Projekten gut funktioniert.

schogol
quelle
0

Mit Eclipstyle können Sie die Einstellungen eines Arbeitsbereichs in Ihre anderen Arbeitsbereiche klonen. Sie können Ihre Einstellungen auch exportieren und später klonen.

Utku Ufuk
quelle