2011-09-09 8 views
11

Ho un albero dei sorgenti a codifica mista e sto ricevendo l'avviso sopra per alcuni dei miei file sorgente. Sono riuscito a impostare con successo la codifica per questi file ISO 8859-1 e, dopo aver invalidato le cache di IDEA, ora vengono visualizzati correttamente nell'editor. Tuttavia, quando compilo, ricevo comunque il messaggio di errore.Intellij IDEA: "carattere non mappabile per la codifica UTF-8" che compila i file ISO-8859-1

Le build di produzione utilizzano formica e non è un problema lì, ma significa che non posso "creare" nell'IDE. C'è un modo per far sì che IDEA compili correttamente, o, in mancanza, riportare l'errore in un avviso?

+0

Non ho idea di IDEA, ma perché è necessario un albero dei sorgenti a codifica mista? Non convertire tutti i file in UTF-8 renderà la vita più facile? –

+0

I file in questione hanno a che fare con la regex matching in dati in lingua straniera con codifiche conosciute. È più facile e meno incline agli errori scrivere la regex nella codifica con cui stai confrontando ... o così presumo. (Sono nuovo di questa base di codice.) –

+0

Quando le stringhe sono in memoria, sono comunque UTF-16, indipendentemente dalla codifica in cui si trovavano i file (supponendo che li abbia compilati correttamente). Quindi, mentre riesco a capire perché questi file sono stati creati in queste codifiche, non c'è nulla di contrario a convertirli ora. (Naturalmente, puoi anche provare a risolvere il bug IDEA.) –

risposta

3

Sembra un known bug.

+0

Ho un progetto a modulo singolo, quindi se quel bug viene riportato con precisione, penso che sto guardando qualcosa di diverso. –

+0

È possibile presentare un problema separato e allegare un progetto di esempio in modo da poterlo esaminare. – CrazyCoder

27

Ho risolto questo problema aggiungendo questa proprietà nel pannello delle opzioni IntelliJ Compiler/Java Compiler: Parametri

Ulteriori riga di comando: -encoding ISO-8859-1

1

Se si utilizza Intellij, il modo più veloce per me era :

File -> File encoding

e scegliere quello che si desidera, in questo caso ISO-8859-1.

1

in /.idea fold, ci sono file encodings.xml, è possibile modificarlo, <file url="file://$PROJECT_DIR$" charset="UTF-8" /> UTF-8 in ISO-8859-1.

Problemi correlati