我一直在努力让它工作大约 1.5 小时......
我让 Emma 在 Jenkins 中运行,并让 Jenkins 将 Emma 报告移动到 artifacts 目录,以便可以在 Jenkins 构建中查看它们。除了报告使用 ISO-8859-1 编码外,这一切都很好。当我通过 java -jar jenkins.war 运行 Jenkins 或将 jenkins.war 放入本地 Tomcat 时,它们都显示 Emma 覆盖页面,其中空格在实心菱形中显示为问号。
我将我的 jvm 和本地 Tomcat 设置为 UTF-8,并且不想(不能真的)更改它们。作为一项快速测试,我将其中一个 HTML 文件加载到我的编辑器 (Geany) 中,并将 HTML 的内容类型更改为 UTF-8,并让 Geany 将文件的编码更改为 UTF-8,当我查看它时很好(没有钻石)。我找到了这个页面: http ://emma.sourceforge.net/reference/ch03s02.html 上面 写着:
属性:report.out.encoding
默认值:report.out.encoding 默认为 JRE file.encoding 系统属性,并被 HTML 和 XML 报告类型覆盖:
report.html.out.encoding:ISO-8859-1
report.xml .out.encoding: UTF-8
但要么它不起作用,要么我没有偶然发现正确的咒语让它起作用。
我尝试添加到 ANT 文件(在我的 build.xml中的许多地方):
<property name="emma.report.html.out.encoding" value="UTF-8" />
<property name="report.html.out.encoding" value="UTF-8" />
我尝试添加
report.html.out.encoding=UTF-8
emma.report.html.out.encoding=UTF-8
到属性文件并更改 emma 运行(在 ant 内)以读取它(我现在手头没有示例 XML,因为它不起作用,我将其删除)。
我添加了
<jvmarg value="-Demma.report.html.out.encoding=UTF-8" />
到我的 build.xml 中另一个 emma 设置下的 ant 构建文件。
我尝试同时运行 Tomcat
-Demma.report.html.out.encoding=UTF-8
and
-Dreport.html.out.encoding=UTF-8
最后,我尝试同时运行 jenkins.war 文件
java -Demma.report.html.out.encoding=UTF-8 -jar jenkins.war
and
java -Dreport.html.out.encoding=UTF-8 -jar jenkins.war
这些都不起作用。
有任何想法吗?