[英]getting error when groovy run through java
used groovy and java i have groovy script used to spit, 用过groovy和Java我有用来吐唾沫的groovy脚本,
def msgO = app.getConversation()
msgO+=msg.getText()
def list = msgO.split("\\+")
getting error when running with java code : 使用Java代码运行时出现错误:
CaptureUtil captureUtil = new CaptureUtil();
binding.setVariable("cap", captureUtil);
GroovyShell shell = new GroovyShell(binding);
boolean status = (boolean) shell.evaluate(template);
getting the error : 得到错误:
java.util.regex.PatternSyntaxException: Dangling meta character '+' near index 0
+
^
at java.util.regex.Pattern.error(Pattern.java:1955)
at java.util.regex.Pattern.sequence(Pattern.java:2123)
at java.util.regex.Pattern.expr(Pattern.java:1996)
at java.util.regex.Pattern.compile(Pattern.java:1696)
at java.util.regex.Pattern.<init>(Pattern.java:1351)
at java.util.regex.Pattern.compile(Pattern.java:1028)
at java.lang.String.split(String.java:2380)
at java.lang.String.split(String.java:2422)
at java_lang_String$split.call(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125)
at Script1.run(Script1.groovy:20)
at groovy.lang.GroovyShell.evaluate(GroovyShell.java:585)
at groovy.lang.GroovyShell.evaluate(GroovyShell.java:623)
at groovy.lang.GroovyShell.evaluate(GroovyShell.java:594)
at com.ctf.sims.parseutils.CaptureUtil.parseGroovy(CaptureUtil.java:185)
when run groovy script it's running well,getting error when run through java only. 运行groovy脚本时运行良好,仅通过Java运行时出现错误。
您可以尝试使用
msgO.split(Pattern.quote('+'))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.