2013-07-22 15 views
10

Esiste qualche impostazione in Eclipse per mostrare solo il progetto Maven in cui risiede il file?Eclipse Maven mostra più percorsi per lo stesso file

Ho diversi progetti Maven, che sono i moduli di un progetto principale Maven:

projParent 
    |-projWeb 
    |-projModel 
    |-projServices 
    |-... 

Se guardo per un file con "Open Resource" (usando Ctrl + Shift + r) in Eclipse, appare in molti progetti (ad esempio : in projParent e in projWeb).

Esiste un modo per mostrare solo la cartella pertinente in cui il file risiede effettivamente?

+0

Questo è un duplicato di http://stackoverflow.com/questions/15064796/eclipse-file-search-finds-the-same-file-multiple-times, ma l'altra domanda ha una risposta molto migliore [answer] (http://stackoverflow.com/a/15067818/722760) (imposta le cartelle nei progetti principali come "derivate"). –

risposta

19

Provare a definire un Working Set che include solo i moduli in cui si desidera eseguire la ricerca e quindi utilizzare quel Working Set nella ricerca.

EDIT

In realtà ho provato e solo funziona perfettamente per impostazione predefinita in Eclipse 4.3 (Keplero), un solo risultato viene restituito per i progetti nidificati.

In ogni caso, ecco come utilizzare il working set in una risorsa aperta (l'esempio non è una risorsa in un modulo nidificato in quanto in questo caso Keplero non mostra risultati duplicati, quindi l'esempio è costituito da due risorse diverse che escludono stesso nome in due moduli diversi):

(1) Premere il tasto ctrl + maiusc + R. Ho cercato una risorsa denominata pom.xml. Potete vedere due risultati:

open resource no working set

(2) Premere il piccolo rivolta verso il basso freccia in alto a destra della finestra e scegli Select Working Set...:

open resource select working set

(3) Controllare il pulsante di opzione Selected Working Sets e verificare i progetti desiderati (nel caso i progetti foglia):

enter image description here

(4) E voilà, Open Resource restituisce un solo risultato:

open resource after working set is selected

+0

Non voglio utilizzare la ricerca aperta in quanto richiede molto tempo e non ha senso utilizzarlo per aprire il file .. Preferisco distinguere visivamente il percorso del file – user593029

+0

@ user593029 è sufficiente scegliere nella 'Open Resource' finestra il Working Set una volta e verrà utilizzato ogni volta che lo si utilizza per la ricerca, non è "ricerca aperta". – yair

+0

@ user593029 Spero che le istantanee siano corrette, non riesco a vederle nello stesso stack (imgur è bloccato qui ...). – yair

13

Probabilmente si sta parlando di una sorta di duplicazione tra il progetto principale e dei suoi sotto-moduli. Nella versione più recente di Eclipse (dal 3,6 forse e sicuro da 3,7) c'è una nuova opzione

Menu di Windows>

Item Preferences > 

    Tree item Maven > 

     Option : Hide folders of physically nested modules 

Questo non sarebbe lavorare su un progetto esistente. Devi eliminarli (logicamente) e reimportarli

+0

Non funziona controllando l'opzione sopra .. ad esempio se webservice.java è controllato in projservice progetto maven e projparent è padre progetto maven di projservice. Quello che vedo sulle risorse openning è /projservice/webservice.java e /projparent/projservice/webservice.java ... non sono sicuro di come eliminare l'elemento ridondante /projparent/projservice/webservice.java in risorse aperte .. Io non voglio usare la ricerca aperta in quanto richiede tempo e non ha senso utilizzarla per aprire il file .. preferisco distinguere visivamente il percorso del file – user593029

+1

Un'opzione simile è disponibile in Kepler (4.3) ma non funziona per me. Puoi accedervi tramite le preferenze: Nella scheda Maven, puoi spuntare "Nascondi cartelle di moduli fisicamente nidificati (sperimentale)" –

+2

Come ho detto, DEVI eliminarli e reimportarli attivare questa funzione, ma potrebbe ancora non funziona ... ah ... IntelliJ Idea è molto meglio per questo! –

Problemi correlati