2012-12-03 6 views
6

Abbiamo Perforce per il controllo sorgente e Jenkins per l'integrazione continua. Sono integrati usando JENKINS Perforce Plugin. IDE Eclipse con P4Eclipse (the Perforce Plug-in for Eclipse) per lo sviluppo/il commit.Perforce e Jenkins cambiano i commenti codifica viziata

Il problema è che i commenti dei cambiamenti (di solito scritti in cinese) si rovinano. (Le fonti con commenti cinesi sono compilate senza questo problema.)

Qual è il motivo? Come risolvere?

Dove è impostata la codifica del plugin Perforce Server e JENKINS?

Change comments are spoiled

UPDATE agosto 2014

Durante la navigazione /jenkins/systemInfo pagina di Jenkins ho notato che la proprietà file.encoding aveva un valore CP1252 (vedi Windows-1252) come quella Jenkins era in esecuzione su Windows. Poiché tali proprietà sono in realtà proprietà di Tomcat, impostiamo UTF-8 utilizzando una delle opzioni all'interno di Change Tomcat's Charset.defaultCharset in windows. Dopo il riavvio di Tomcat abbiamo ottenuto file.encoding UTF8, ma non ha risolto il problema.

Ancora una volta, le origini sono in UTF-8 e non hanno alcun problema dopo l'arrivo sul server Jenkins. Si tratta di commenti di commit.

UPDATE 2:

Non è WAP correlato come commenti nel codice Java vengono visualizzati correttamente.
Abbiamo osservato più da vicino e abbiamo scoperto che Jenkins memorizza i commenti delle modifiche nel file xml per ogni lavoro. E in quella codifica di file è già rovinato.

+0

Che OS/default sono il cliente necessariamente, il server per forza, e Jenkins? – flup

+0

Ed è solo Jenkins in cui i commenti appaiono confusi? Puoi leggerli dal client della riga di comando? – flup

+0

[L'importanza di impostare una codifica dei caratteri in Perforce] (http://kb.perforce.com/article/1406/importance-of-setting-a-character-encoding-in-perforce) dice che i metadati sono sempre utili 8 se il server è abilitato per Unicode. È? – flup

risposta

2

Hai provato a cambiare la codifica della pagina sul browser stesso?

dipende dal browser, ma su Firefox, si dovrebbe fare clic su Visualizza -> Codifica caratteri -> cinese codifica

+0

Il rilevamento automatico predefinito era cinese. Sì, ho provato GBK, BIG5, GB_2312, UTF-8 e alcuni altri ... Ancora no. –