Domanda

Ho appena eseguito l'upgrade a Eclipse 3.4 per la seconda volta e penso che sia per ora. La prima volta (proprio quando è stato rilasciato) era troppo pieno di bug per me da digerire (principalmente il plug-in PDT 2.0); ma ora sembra che tutto sia stato risolto.

Il mio problema è il validatore Javascript. Se definisco una classe in un file JS nel mio progetto, quindi provo a usarla in un altro, mi dice che il tipo non è definito. Questo è davvero fastidioso poiché alcuni dei miei script sono pieni di risatine rosse.

Un altro problema è che questo codice:

var m_dialogFrame = document.getElementById(m_dialogId);

Fa uno squiggle giallo che dice " Tipo non corrispondente: impossibile convertire da Element a ___ m_dialogBody5 " Posso risolverlo aggiungendo

    /**
     * @type Element
     */

Prima, ma anche quello, sarà disordinato.

Inoltre, entrambi:

new XMLHttpRequest();

E

new ActiveXObject("Microsoft.XMLHTTP");

Ottieni le rughe rosse che dicono " x non può essere risolto in un tipo "

L'ultimo problema è con:

if (m_options.width! = " auto ")

Ottiene uno squiggly rosso perché: " L'operatore! = non è definito per i tipi di argomento Numero, Stringa "

Come posso risolvere questi problemi o semplicemente eliminare l'intero strumento di convalida Javascript? A proposito: sembra fantastico se riesco a farlo funzionare.

È stato utile?

Soluzione

Sembra che questo problema sia dovuto al browser predefinito per Eclipse che non ha le librerie richieste.

Prova i passaggi seguenti per aggiungere la libreria richiesta: Progetto - & Gt; Proprietà - & Gt; JavaScript - & Gt; Librerie JavaScript - & Gt; Librerie (tab) - & Gt; Aggiungi libreria di runtime - & Gt; seleziona "Libreria di Internet Explorer"

Questo dovrebbe risolvere il problema. Lo ha fatto per me.

Altri suggerimenti

Sfortunatamente, potresti dover semplicemente annullare la convalida JavaScript.

Nella mia esperienza, gli strumenti JavaScript forniti in bundle con Eclipse 3.4 hanno difficoltà ... beh, comprensione JavaScript, generando avvisi e errori fasulli di conseguenza.

Ad esempio, la pratica comune di usare un Object come spazio dei nomi di un povero fa sì che si perda completamente. Ecco uno screenshot del tipo di casino che fa quando cerca di capire questo file JavaScript - nota la vista schema inutile e gli avvisi e gli errori spuri (e non corretti) (incluso il fatto che non sembrano comprendere che String.split restituisce un Array).

Questo è molto doloroso. Un modo per risolvere il problema per me è stato quello di escludere tutti i file js dalla build. Proprietà - & Gt; javascript - & Gt; Librerie - & Gt; scheda Sorgente ed escludi tutti i file che ti danno problemi .... è un peccato perché volevo un completamento automatico ....: ( ma ho bisogno di finire il progetto per lavoro .... Se qualcuno ha una soluzione, sarebbe molto apprezzato:)

Dopo ore di guardarsi intorno ho scoperto come rimuovere definitivamente la validazione JS.

Questo significa modificare il tuo file .project, quindi esegui il backup prima nel caso.

  • Chiudi Eclipse
  • Apri il tuo file .project
  • cerca la seguente riga: < nature > org.eclipse.wst.jsdt.core.jsNature < / nature >
  • eliminalo
  • salva il tuo file e avvia Eclipse

Non ci sono più scricchiolii rossi o gialli dappertutto ... ma non più convalide js.

Se qualcuno sa come farlo correttamente senza modificare il file .project, per favore condividi.

Apparentemente per disabilitare completamente la validazione dovresti anche disabilitare " Segnala problemi mentre digiti " sotto JavaScript - > Editor.

Ho scoperto che i vecchi errori di convalida rimarranno nella vista dei problemi ed evidenziati nei file fino a quando non gli dirai di convalidare di nuovo, quindi dopo aver salvato le tue preferenze di convalida JSP, fai clic destro su un progetto per convalidare tutto in esso; ciò farà scomparire gli errori.

La risposta di user85835 mi ha aiutato un po ', ma dovevo anche seguire questi due passaggi aggiuntivi.

Prima di tutto per rimuovere effettivamente gli avvisi e gli errori ed evitare che vengano ricreati immediatamente, fai così:

  1. Disabilita la ricostruzione immediata automatica dopo la pulizia, che viene eseguita nella finestra Pulisci ...
  2. Progetto pulito

Quindi chiudi Eclipse e rimuovi < nature > org.eclipse.wst.jsdt.core.jsNature < / nature > come descrive user85835.

Ma prima di riavviare Eclipse eseguire anche questo secondo passaggio.

  1. Nel tuo file .project cerca un < buildCommand > Blocco XML contenente un & Lt; name & Gt; org.eclipse.wst.jsdt.core.javascriptValidator & Lt; / name & Gt ;.
  2. Se trovi questo elimina anche questo blocco.

Quindi salva il tuo file .project e riavvia Eclipse

Ripristina le impostazioni pulite e ricostruisci come desideri.

Questo ha funzionato per me.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top