2012-12-13 5 views
6

ich ein seltsames Verhalten von M2e auf Eclipse begegnen:Eclipse-M2e "Update Maven-Projekt", fügt ein nicht benötigter bin-Verzeichnis

  1. Clone Projekt von Remote-Git Repository
  2. Die Struktur dir bei Projekt-Explorer zeigte nicht hat maven natures, nur pom.xml bei root und packages. Keine "JRE System Library", keine "Maven Abhängigkeiten". Nein "src/main/java", nur "my.packages.1", "my.packages.2"
  3. Ich aktualisiere das Projekt mit maven-> Update Maven Project. Alles wird gut angezeigt, bis auf ein "bin" -Verzeichnis, das erstellt wurde, und der Inhalt von bin dir ist dasselbe wie das, was ich von git auschecke.

Beispiel: vor der Aktualisierung Maven Projekt:

.settings/ 
src/ 
pom.xml 
.gitignore 

nach dem Update Maven Projekt:

.settings/ 
src/ 
pom.xml 
.gitignore 
bin/ <------ this dir appears after update maven project 
bin/.settings/ <----------- contents the same as outside dir 
bin/src 
bin/.gitignore 
bin/pom.xml 

Wie soll ich dieses seltsame Verhalten zu vermeiden?

Antwort

5

Es scheint, dass vor dem "update project" das Verzeichnis bin als Ausgabeverzeichnis konfiguriert wurde. Ausgabe-Verzeichnisse sind in Eclipse standardmäßig ausgeblendet (zumindest im Paket-Explorer und im Projekt-Explorer). Wenn Sie das Projekt als Maven-Projekt konfiguriert haben, wurde das Ausgabeverzeichnis in target/classes geändert. Dein bin-Ordner ist jetzt nur noch ein Ordner, der nicht mehr versteckt ist.
Da Sie es nicht mehr benötigen, können Sie es sicher löschen.

+0

Vielen Dank für die Antwort. Gibt es Möglichkeiten, den Projektstandard auf Maven Project zu setzen? – dhchen

+1

Nicht das ich weiß. Aber Sie können das Projekt als Maven-Projekt importieren, dann wird es beim Import korrekt konfiguriert. Gehen Sie dazu in das Menü Datei -> Importieren -> Maven -> Vorhandene Maven-Projekte – dunni

0

Es ist mir auch passiert, weil ich die .classpath aus dem Repo in .gitignore ausgeschlossen habe. Ich dachte zuerst, es könnte einige Konflikte zwischen Windows und Linux-Entwicklern geben, aber ich lag falsch, .classpath sollte identisch sein.

Wenn Sie keine .classpath haben, auf dem Klonen, Java-Builder Kicks in und verunstalten Dinge vor Maven Builder ein sauberes .classpath nachbildet.

Fazit, commit und schieben Sie die .classpath und das passiert nicht mehr.

Verwandte Themen