Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
让JettyRunner使用UTF-8编码提供静态内容(如CSS和JavaScript)_Javascript_Encoding_Utf 8_Jetty - Fatal编程技术网

让JettyRunner使用UTF-8编码提供静态内容(如CSS和JavaScript)

让JettyRunner使用UTF-8编码提供静态内容(如CSS和JavaScript),javascript,encoding,utf-8,jetty,Javascript,Encoding,Utf 8,Jetty,我正在通过Jetty Runner(7.6.15)运行一个Java项目。我最近一直在尝试使用D3.js,为了调试一些神秘的问题,我需要将其未经整理地提供给用户。D3在一些变量名中有一些非拉丁Unicode字符(比如varπ=Math.PI) 当我尝试使用未统一的文件时,我会出错,因为我的浏览器认为字符编码是ISO-8859-1而不是UTF-8。果然,服务器响应中的“Content Type”头没有字符集 我启动Jetty Runner时,LANG和LC_ALL都设置为“en_US.UTF-8”,

我正在通过Jetty Runner(7.6.15)运行一个Java项目。我最近一直在尝试使用D3.js,为了调试一些神秘的问题,我需要将其未经整理地提供给用户。D3在一些变量名中有一些非拉丁Unicode字符(比如
varπ=Math.PI

当我尝试使用未统一的文件时,我会出错,因为我的浏览器认为字符编码是ISO-8859-1而不是UTF-8。果然,服务器响应中的“Content Type”头没有字符集

我启动Jetty Runner时,
LANG
LC_ALL
都设置为“en_US.UTF-8”,并且我在Java命令行上传递一个系统属性
文件。encoding
也设置为“UTF-8”。这显然是不够的。我可以查看主机上的源文件,它绝对完好无损;事实上,如果我直接从浏览器地址栏加载JavaScript文件,并手动告诉Firefox它是Unicode,那么它看起来很好

我不会用配置文件启动Jetty Runner,因为我不知道如何做。它似乎在主HTML页面(它是一个单页应用程序)的内容类型标题中添加了一个明确的ISO-8859-1标记,这当然会覆盖文档标题中的
标记


有没有办法做到这一点?有时我觉得自己是地球上仅有的12个使用Jetty Runner的人之一:)

这就像我的
web.xml中的一个子句一样简单:

  <mime-mapping>
    <extension>js</extension>
    <mime-type>application/javascript; charset=UTF-8</mime-type>
  </mime-mapping>

js
应用程序/javascript;字符集=UTF-8
我不知道为什么这么明显的事情逃过了我的注意。它甚至与码头本身没有多大关系