2012-12-13 11 views
6

ho incontrato uno strano comportamento del M2E su Eclipse: progettoEclipse M2E "Progetto Maven Update" aggiunge un bidone non necessaria directory

  1. Clone dal repository git remote
  2. La struttura dir mostrato al progetto explorer non ha nature maven, solo pom.xml alla radice e pacchetti. Nessuna "Libreria di sistema JRE", nessuna "dipendenza Maven". No "src/main/java", solo "my.packages.1", "my.packages.2"
  3. Aggiornamento del progetto utilizzando maven-> Aggiorna Progetto Maven. Tutto viene visualizzato bene, tranne una directory "bin" creata e il contenuto di bin dir è lo stesso di quello che ho estratto da git.

esempio: prima di progetto Maven aggiornamento:

.settings/ 
src/ 
pom.xml 
.gitignore 

dopo progetto aggiornamento Maven:

.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 

Come devo evitare questo strano comportamento?

risposta

5

Sembra che prima di eseguire il "progetto di aggiornamento", la directory bin fosse configurata come directory di output. Le directory di output sono nascoste per impostazione predefinita in Eclipse (almeno in Package Explorer e Project Explorer). Quando hai configurato il progetto come progetto Maven, la directory di output è stata modificata in target/classes. La cartella bin ora è solo un'altra cartella, che non è più nascosta.
Dal momento che non ne hai più bisogno, puoi tranquillamente cancellarlo.

+0

Grazie per la risposta. C'è qualche modo per impostare il progetto predefinito su progetto Maven? – dhchen

+1

Non lo so. Ma puoi importare il progetto come progetto Maven, quindi sarà correttamente configurato durante l'importazione. Per questo, vai al menu File -> Importa -> Maven -> Progetti Maven esistenti – dunni

0

È successo anche a me perché ho escluso lo .classpath dal repository in .gitignore. Inizialmente pensavo che ci potessero essere dei conflitti tra Windows e gli sviluppatori di Linux, ma mi sbagliavo, .classpath dovrebbe essere identico.

Se non si dispone di un .classpath, al momento della clonazione, java builder si avvia e crea problemi prima che il generatore di Maven ricrea un file pulito .classpath.

Conclusione, commit e push dello .classpath e ciò non accade più.

Problemi correlati