Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/323.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.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
Java Groovy:美元符号后的非法字符串体字符;_Java_Json_Groovy_Rest Assured - Fatal编程技术网

Java Groovy:美元符号后的非法字符串体字符;

Java Groovy:美元符号后的非法字符串体字符;,java,json,groovy,rest-assured,Java,Json,Groovy,Rest Assured,我在我的java项目中使用RestAssured框架,但是我从Groovy中得到了一个错误。我需要在我的json中找到一堆元素。我的json如下所示: [ { "city" : "LONDON", "car" : "myCar", "name" : "Jack", "familyName" : "Joe" } ] 下面是

我在我的
java
项目中使用
RestAssured
框架,但是我从
Groovy
中得到了一个错误。我需要在我的
json
中找到一堆元素。我的json如下所示:

[ {
  "city" : "LONDON",
  "car" : "myCar",
  "name" : "Jack",
  "familyName" : "Joe"
} ]
下面是我如何制作在json上搜索的键:

  List<String> gfg = new ArrayList<>(List.of("$.[0].city", "$.[0].car", "$.[0].name", "$.[0].familyName")); 

  for (String path : jsonPaths) {
      String key = "\"" + path + "\"";
      Assert.assertTrue(rawRes.jsonPath().getString(key) != null);
    }

双引号表示“Groovy字符串”,其中
$
具有含义。所以我会尝试这样的单引号:
def gfg=['$[0].city','$[0].car','$[0].name','$[0].familyName']
@Jeff,它是java代码还是groovy:
List gfg=…
?为什么json路径中有
$
?我看不出restasured中支持它……根据doc:是使用XPath轻松从对象文档获取值的替代方法。从文档中获取对象时,它遵循Groovy语法。
Script1.groovy: 1: illegal string body character after dollar sign;
   solution: either escape a literal dollar sign "\$5" or bracket the value expression "${5}" @ line 1, column 29.
   restAssuredJsonRootObject."$.[0].endTimeLocal"