Jmeter 令牌分析错误:词法错误

Jmeter 令牌分析错误:词法错误,jmeter,beanshell,Jmeter,Beanshell,当我使用Beanshell后处理器对某些数据进行正则化并写入文件时,出现以下错误: 2015/06/11 12:11:19 ERROR - jmeter.util.BeanShellInterpreter: Error invoking bsh method: eval Sourced file: inline evaluation of: `` import java.io.FileOutputStream; import java.util.Map; import

当我使用Beanshell后处理器对某些数据进行正则化并写入文件时,出现以下错误:

2015/06/11 12:11:19 ERROR - jmeter.util.BeanShellInterpreter: Error invoking bsh method: eval   Sourced file: inline evaluation of: ``    import java.io.FileOutputStream;     import java.util.Map;     import java.u . . . '' Token Parsing Error: Lexical error at line 10, column 45.  Encountered: "d" (100), after : "\"c:\\" 
2015/06/11 12:11:19 WARN  - jmeter.extractor.BeanShellPostProcessor: Problem in BeanShell script org.apache.jorphan.util.JMeterException: Error invoking bsh method: eval   Sourced file: inline evaluation of: ``    import java.io.FileOutputStream;     import java.util.Map;     import java.u . . . '' Token Parsing Error: Lexical error at line 10, column 45.  Encountered: "d" (100), after : "\"c:\\" 
我的代码:

import java.io.FileOutputStream;
import java.util.Map;
import java.util.Set;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.*;

String entirePage = new String(data);

FileWriter fstream = new FileWriter("c:\\downloads\\results.txt",true);
BufferedWriter out = new BufferedWriter(fstream);

Pattern totalNetValue = Pattern.compile("totalNetValue\">([^\"]+)</span>");

Matcher mTotalNetValue = totalNetValue.matcher(entirePage);
    mTotalNetValue.find();
//out.write(${date});
    out.write(mTotalNetValue.group(1));
out.write("\n");

out.close();
import java.io.FileOutputStream;
导入java.util.Map;
导入java.util.Set;
导入java.util.ArrayList;
导入java.util.List;
导入java.util.regex.*;
String entirePage=新字符串(数据);
FileWriter fstream=新的FileWriter(“c:\\downloads\\results.txt”,true);
BufferedWriter out=新的BufferedWriter(fstream);
Pattern totalNetValue=Pattern.compile(“totalNetValue\”>([^\“]+)”);
Matcher mTotalNetValue=totalNetValue.Matcher(entirePage);
mTotalNetValue.find();
//out.write(${date});
out.write(mTotalNetValue.group(1));
输出。写入(“\n”);
out.close();

知道我的代码有什么问题吗?谢谢:-)

如何将代码读入bsh解释器?看起来双反斜杠已经减少为单反斜杠了

作为一个快速修复,只需使用正斜杠而不是反斜杠,例如

FileWriter fstream = new FileWriter("c:/downloads/results.txt",true);

只是更新一下。如果我使用新的FileWriter(“results.txt”,true),那么它可以正常工作。这似乎不像“c:\\downloads\\…”路径这一奇怪的问题,但正斜杠已经解决了这个问题。如果您将beanshell代码直接放在Java字符串中,或者从反斜杠转义的源代码中读取代码,这就不那么奇怪了。因为我不知道如何存储/读取代码,所以我几乎无法纠正真正的问题,而使用斜杠只是一种解决方法。