服務(wù)器用的是Ubuntu6.06,為了便于命令行管理,設(shè)置的是全英文環(huán)境。今天把生成曲線圖的模塊部署到服務(wù)器上時(shí)發(fā)現(xiàn)中文顯示為方框,從google上搜了好久,都沒(méi)有搞出個(gè)所以然來(lái)。搜到的一些文章講的都是編碼設(shè)置的問(wèn)題,我這都不是這個(gè)問(wèn)題。因?yàn)槲以陂_發(fā)全過(guò)程中都是用的UTF-8碼,沒(méi)有道理在我的工作站顯示正常而到服務(wù)器上不行了。后來(lái)偶爾搜到一篇文章說(shuō)Solaris下部署的問(wèn)題,講到可能是jre找不到中文字體的原因。一看,果然是,服務(wù)器上的jre中我沒(méi)有拷中文字體上去,沒(méi)有字體當(dāng)然不能正常顯示咯。最簡(jiǎn)單的解決辦法:在$JAVA_HOME/jre/lib/fonts目錄中建立fallback文件夾,把中文字體放到該文件夾中即可,比如simsun.ttf.
很多由windows上開發(fā)的JFreeChart程序部署到linux服務(wù)器上的不能正確顯示中文的問(wèn)題,如果確保了所有的編碼統(tǒng)一:比如都是utf-8碼的前提下,大概就是這個(gè)問(wèn)題,還有從Linux工作站部署到服務(wù)器上的也可能出現(xiàn)這個(gè)問(wèn)題。因?yàn)檠b服務(wù)器時(shí)一般都不裝圖形界面的,自然中文不會(huì)過(guò)多考慮,像我就忘裝了。
很多由windows上開發(fā)的JFreeChart程序部署到linux服務(wù)器上的不能正確顯示中文的問(wèn)題,如果確保了所有的編碼統(tǒng)一:比如都是utf-8碼的前提下,大概就是這個(gè)問(wèn)題,還有從Linux工作站部署到服務(wù)器上的也可能出現(xiàn)這個(gè)問(wèn)題。因?yàn)檠b服務(wù)器時(shí)一般都不裝圖形界面的,自然中文不會(huì)過(guò)多考慮,像我就忘裝了。