2013-01-08 9 views
37

In un progetto SVN di Eclipse ho un problema; quando ho provato ad aprire una dichiarazione di una classe, ho ricevuto questo errore:Dichiarazione di apertura di Eclipse nel progetto Java

Problems opening an editor Reason : projectname does not exist. 

Anche il refactoring non funziona.

Ho cercato sul Web e ho provato tutte le soluzioni trovate, ma nulla ha aiutato. Ho scaricato diverse versioni di Eclipse e Java e sono passato a un'area di lavoro pulita, ma ho ancora il problema.

Come posso risolvere il mio problema o quale soluzione posso provare?

+0

Hai provato la creazione di un nuovo progetto e la copia/spostamento del codice da quello vecchio? – madth3

+0

Hai eliminato la cartella .metadata? – syb0rg

+0

sì ma entrambi non risolvono il problema :(o la mia squadra da qualche parte cancella qualsiasi configurazione? Sotto buildpath non posso fare nessuna azione e questo problema non ha una classe principale – Taegug

risposta

6

È necessario verificare come progetto Java, o preferibilmente, il suo creatore dovrebbe aver impegnato i file .project e .classpath per esso.

+1

Sto avendo questo problema e vorrei che Eclipse generasse quelli per me basati sul mio POM – Crowie

+2

Non sei l'OP, ma ok. quello che clonate il repository e quindi usate l'importazione (credo) come wizard del progetto Maven (invece di passare attraverso la vista Git Repositories come al solito) – nitind

+0

Come documentato qui: http://stackoverflow.com/q/4869815/9 77087 – Crowie

2

è possibile risolvere il problema creando un nuovo progetto java. quando si estrae il progetto, è necessario selezionare l'opzione predefinita, [Check out come progetto configurato utilizzando la nuova procedura guidata del progetto].

0

C'è un bug in Eclipse (almeno in Luna) per un flusso di lavoro molto specifico, che potrebbe non essere la risposta a questa domanda specifica, ma potrebbe essere utile per gli altri.

Se si esegue un'importazione nella cartella src (ovvero la cartella src è attiva prima di eseguire l'importazione) da un jar estratto (come codice sorgente) e si collocano i punti di interruzione nei file nidificati * .java nei pacchetti nidificati, non colpirà quei punti di interruzione. Per far funzionare le cose, è necessario continuare a premere F3 invece di usare "Dichiarazione aperta" per ottenere il file * .java in cui si desidera impostare un punto di interruzione, quindi aggiungere il punto di interruzione facendo doppio clic sul margine sinistro. Quindi esegui> Debug come> Applicazione Java.

24

Fare clic con il tasto destro sul progetto -> Proprietà -> Sfaccettature progetto -> Fare clic sul collegamento di configurazione -> Fare clic sul pulsante Applica -> Fare clic sul pulsante OK.

I passaggi precedenti dovrebbero impostare il progetto come progetto Java.

+2

Alcuni progetti non hanno sfaccettature già configurate, potresti suggerire qualcos'altro? – Dwhitz

+0

FYI I passaggi precedenti^servono a configurare le facce del progetto. – Jay

+0

Sì, mi dispiace, sto solo dicendo che non ho il link di configurazione. – Dwhitz

0

Se il formato del progetto estratto è di tipo Maven, è necessario prima convertirlo in un progetto Maven. Può essere perché le classi richieste non sono state ancora generate. Per fare ciò, fare clic con il tasto destro del mouse sul progetto, fare clic su Configura, quindi su Converti in Progetto Maven.

10

Se il progetto è un progetto Maven multi-modulo, è necessario importare i progetti figlio/modulo in aggiunta al progetto genitore/pom. Quindi assicurati di aprire solo i file di origine tramite il progetto figlio. I file Java aperti in questo modo avranno la voce di menu del tasto destro del Refactor e la dichiarazione aperta F3, ecc. Funzioneranno correttamente. Tuttavia, se il file Java viene aperto dal progetto principale, queste funzioni di Eclipse saranno mancanti.

È piuttosto frustrante quando si apre un file tramite un risultato di ricerca, poiché il file verrà trovato ed elencato sia nel progetto padre che in quello figlio. È necessario assicurarsi di lavorare solo con il file a cui si accede tramite il progetto figlio.

Non riesco a spiegare con precisione cosa succede con Eclipse, ma sembra che Eclipse non riconosca il progetto padre come progetti Java, anche se sintassi correttamente - evidenzia i file Java a prescindere dal fatto che siano acceduti tramite il genitore o progetto figlio.

+0

sono d'accordo con te, ho riscontrato lo stesso problema ed è abbastanza resistente alla frittura per lavorare con le cartelle genitore .. hai trovato qualche soluzione? – Jrr

+0

"_Quindi assicurati di aprire solo i file sorgente tramite il progetto figlio._" Grazie .. Sono tornato dalle vacanze e ho avuto l'errore descritto da OP. Ho scoperto che il file errato è stato aperto in Eclipse. Il mio cervello ha ancora bisogno di riavviare dopo le vacanze sembra ..;) –

+0

Ancora in corso nel 2018 - Ho spostato tutti i progetti segnaposto del modulo "solo pom" in un lavoro separato -set per cercare di evitare questo –

0

Ho avuto lo stesso in Eclipse Luna su Debian 8. Mi mancava il file .classpath al momento del check out da SVN. L'ho copiato manualmente e modificato alcuni nomi di percorso, aggiornato il progetto e funzionava di nuovo.

2

Potrebbe non avere un costruttore. Controlla il tuo PROJ_HOME/.project che dovrebbe essere come:

<?xml version="1.0" encoding="UTF-8"?> 
<projectDescription> 
    <name>the-one-user</name> 
    <comment></comment> 
    <projects> 
    </projects> 
    <buildSpec> 
     <buildCommand> 
      <name>org.eclipse.jdt.core.javabuilder</name> 
      <arguments> 
      </arguments> 
     </buildCommand> 
    </buildSpec> 
    <natures> 
     <nature>org.eclipse.jdt.core.javanature</nature> 
    </natures> 
</projectDescription> 

Rif: FAQ How do I add a builder to a given project?

-1

Vai al progetto Proprietà, selezionare progetto sfaccettature poi convertire proiettare sfaccettature quindi scegliere OK allora si sarà in grado di aprire l'editor.

0

Succede, quando le librerie non sono disponibili sul percorso classe del progetto in cui F3 non funziona. Seleziona un altro progetto e prova a usare f3 per la navigazione. Funzionerà.

La soluzione consiste nell'aggiungere file JAR nelle librerie o aggiungere librerie nel progetto. Provare a utilizzare il progetto MAVEN in modo che il problema non possa mai verificarsi.

1

Ho avuto anche questo problema. Sembra che dopo una ricerca nell'area di lavoro Eclipse abbia aperto un file sbagliato.

ho premuto Ctrl + Maiusc +H (tipo aperto in Hierarchy), digitato il nome della classe, e lo aprì. Il file si apriva in una nuova scheda e tutto era di nuovo navigabile.

La differenza di icone è:

the non-navigable J is in a contour font