org.mozilla.javascript.EvaluatorException:非法字符(/[filename].js#1)JSCover

时间:2014-04-28 14:20:36

标签: javascript windows encoding jasmine jscoverage

我正在尝试在Windows 7上运行JSCover,我已经放置了我要测试的文件〜\ JSCover-0.2.0 \ doc \ example
我的两个文件产生500 (Internal Server Error)错误,而jquery jasmine和其他库加载正常。

错误:

org.mozilla.javascript.EvaluatorException: illegal character (/onTheMove-Tree.js#1)
at org.mozilla.javascript.DefaultErrorReporter.runtimeError(DefaultErrorReporter.java:77)
at org.mozilla.javascript.DefaultErrorReporter.error(DefaultErrorReporter.java:64)
at org.mozilla.javascript.Parser.addError(Parser.java:188)
at org.mozilla.javascript.Parser.addError(Parser.java:166)
at org.mozilla.javascript.Parser.addError(Parser.java:162)
at org.mozilla.javascript.TokenStream.getToken(TokenStream.java:832)
at org.mozilla.javascript.Parser.peekToken(Parser.java:296)
at org.mozilla.javascript.Parser.name(Parser.java:2880)
at org.mozilla.javascript.Parser.primaryExpr(Parser.java:2792)
at org.mozilla.javascript.Parser.memberExpr(Parser.java:2418)
at org.mozilla.javascript.Parser.unaryExpr(Parser.java:2316)
at org.mozilla.javascript.Parser.mulExpr(Parser.java:2241)
at org.mozilla.javascript.Parser.addExpr(Parser.java:2225)
at org.mozilla.javascript.Parser.shiftExpr(Parser.java:2206)
at org.mozilla.javascript.Parser.relExpr(Parser.java:2181)
at org.mozilla.javascript.Parser.eqExpr(Parser.java:2153)
at org.mozilla.javascript.Parser.bitAndExpr(Parser.java:2142)
at org.mozilla.javascript.Parser.bitXorExpr(Parser.java:2131)
at org.mozilla.javascript.Parser.bitOrExpr(Parser.java:2120)
at org.mozilla.javascript.Parser.andExpr(Parser.java:2109)
at org.mozilla.javascript.Parser.orExpr(Parser.java:2098)
at org.mozilla.javascript.Parser.condExpr(Parser.java:2062)
at org.mozilla.javascript.Parser.assignExpr(Parser.java:2033)
at org.mozilla.javascript.Parser.expr(Parser.java:2012)
at org.mozilla.javascript.Parser.nameOrLabel(Parser.java:1765)
at org.mozilla.javascript.Parser.statementHelper(Parser.java:1032)
at org.mozilla.javascript.Parser.statement(Parser.java:901)
at org.mozilla.javascript.Parser.parse(Parser.java:540)
at org.mozilla.javascript.Parser.parse(Parser.java:478)
at jscover.instrument.SourceProcessor.instrumentSource(SourceProcessor.java:408)
at jscover.instrument.SourceProcessor.processSourceWithoutHeader(SourceProcessor.java:394)
at jscover.instrument.SourceProcessor.processSource(SourceProcessor.java:386)
at jscover.instrument.SourceProcessor.processSourceForServer(SourceProcessor.java:375)
at jscover.instrument.InstrumenterService.instrumentJSForWebServer(InstrumenterService.java:360)
at jscover.server.InstrumentingRequestHandler.handleGet(InstrumentingRequestHandler.java:436)
at jscover.server.HttpServer.run(HttpServer.java:403)

我已经检查过,通常建议的解决方案是change encoding java -Dfile.encoding=UTF-8 -jar JSCover-all.jar 但是在我的情况下结果并没有什么不同 我是在错误的.jar上运行吗? enter image description here

我正在停止运行example-server.bat然后运行命令,然后在更改编码后再次启动example-server.bat。

更新:我已经检查过,我的系统编码是ISO-8859-1,但java -Dfile.encoding=ISO-8859-1 -jar JSCover-all.jar仍然没有产生任何影响。
我也尝试过没有运气的完整路径

C:\Users\Administrator\Downloads\JSCover-0.2.0\target\dist>java -Dfile.encoding=
ISO-8859-1 -jar "C:\Users\Administrator\Downloads\JSCover-0.2.0\target\dist\JSCo
ver-all.jar"

如何检查运行JSCover服务器的编码?以确认我的更改是否生效。

1 个答案:

答案 0 :(得分:0)

这不是一个合适的解决方案,但更多的是暂时解决此问题的黑客攻击:
我做了什么我打开了在Notepadd ++中给我500 (Internal Server Error)的文件,然后将编码更改为'转换为UTF-8而没有BOM'。
这让我可以解决这个问题,所以从技术上来说这是解决这个问题的一种方法,但我希望有人提出更好的解决方案。