2017-11-23 22 views
0

以下は私のJSONスクリプトです。 PRAMS.json以下jsonスクリプトをgroovyにファイルとして送信する方法

{ 
    "JSON" : { 
     "test": "iTEST", 
     "testname": "BOV-VDSL-link-Rateprofile-CLI-Test-1", 
     "params": [ 
      { 
       "n2x_variables/config_file": "C:/Program Files (x86)/Agilent/N2X/RouterTester900/UserData/config/7.30 EA SP1 Release/OSP Regression/BOV/Bov-data-1-single-rate-profile.xml" 
      }, 
      { 
       "n2x_variables/port_list": "303/4 303/1" 
      } 
     ] 
    } 
} 

は私のGroovyスクリプトだと私は同じグルーヴィーなスクリプトにparams.jsonスクリプトを送信しています。

parseJSON.groovy

import groovy.json.JsonSlurper 
def jsonFile = new File("../var/PARAMS.json") 
def keys = new JsonSlurper().parse("jsonFile.text") 
println keys.keySet()  

私は、エラーの下に取得しています:

****No signature of method: groovy.json.JsonSlurper.parse() is applicable for argument types: (java.lang.String) values: [jsonFile.text]**** 

いずれかが私を助けてくださいことはできますか?

返信いただきありがとうございます。私はこのjsonを初めてお使いです。

[email protected]:~/Desktop/kramdeni/vars$ groovy parseJSON.groovy 

Caught: groovy.lang.MissingMethodException: No signature of method: groovy.json.JsonSlurper.parse() is applicable for argument types: (java.lang.String) values: [jsonFile] 
Possible solutions: parse(java.io.Reader), parseText(java.lang.String), use([Ljava.lang.Object;), wait(), grep(), any() 
groovy.lang.MissingMethodException: No signature of method: groovy.json.JsonSlurper.parse() is applicable for argument types: (java.lang.String) values: [jsonFile] 
Possible solutions: parse(java.io.Reader), parseText(java.lang.String), use([Ljava.lang.Object;), wait(), grep(), any() 
at parseJSON.run(parseJSON.groovy:3) 

[email protected]:~/Desktop/kramdeni/v 

と私の予想出力は内鍵なしで唯一、すべての値を印刷することである。

は、私は、画像をアップロードしようとしていますが、私は総エラーメッセージを与えることができたときに、エラーメッセージを示す、スクリーンショットを共有することができません必要な注文。その結果、上記取得するには

私は以下のようにグルーヴィーなスクリプトを書いた:

import groovy.json.JsonSlurper 

label = "test testname params" 

def jsonFile = new File('PARAMS.json') 
def par = new JsonSlurper().parse(jsonFile) 
println keys.keySet() 

def command = "" 
keys = label.split(" ") 
println "keys: " + keys 

for (key in keys) { 
    command += par[key] + " " 
} 
println "command: " + command 
+0

は、それは可能でしょうか?期待される成果は? – Rao

答えて

0
import groovy.json.JsonSlurper 

def src = new File("MYPATH/MY.json") 
//next line downloads json from URL: 
//def src = new URL("http://date.jsontest.com") 

def json = new JsonSlurper().parse(src.newInputStream()) 

json.each{ k,v-> println "$k = $v" } 

それを試してみてください。

https://groovy-playground.appspot.com/#?load=ccceffd570c6ee176bc6f1fcdafdcbe0


を使用すると、例外

を持っている場合210

あなたがかっこいいのかなり古いバージョンを持っていることを意味している、しかし、それは解決策を提案する - ファイルからの読者を取得しよう:

def src = new File("MYPATH/MY.json") 
def json = new JsonSlurper().parse(src.newReader("UTF-8")) 
json.each{ k,v-> println "$k = $v" } 

しかし、あなたはあなたのグルーヴィーのバージョンを見つける必要があり続けるために、そしてあなたのためのドキュメントを見つけます

http://docs.groovy-lang.org/1.8.6/html/api/groovy/json/JsonSlurper.html

:JsonSlurperで唯一の2 parse方法があるグルーヴィー1.8.6で例えばそれに

を参照の開発バージョンと継続あなたはスクリーンショットを共有するため

と最新のグルーヴィーはるかに...

http://docs.groovy-lang.org/latest/html/gapi/groovy/json/JsonSlurper.html

+0

私も上記の1つを試しましたが、同じエラーが発生しました。もう1つ、私のPARAMS.jsonスクリプトprasentは次のように追加します。 var()dirにPARAMS.jsonファイルとparseJSON.groovyファイルがあります。 – Krishnaveni

+0

上記のコードを試した後にエラーが発生します。{メソッドのシグネチャはありません:groovy.json.JsonSlurper.parse()は引数型に適用できます。 lang.String)values:[jsonFile]} – Krishnaveni

+0

誰かが助けてください、私はコーディングで前進することができませんか? – Krishnaveni