我在騾子裏有下面的Groovy腳本。Groovy抱怨意想不到的令牌: - >
import org.custommonkey.xmlunit.XMLUnit.*
def expected =
getClass().getResourceAsStream('/samples/in/request.xml').text
XMLUnit.setIgnoreWhitespace(true)
def documentDiff = DiffBuilder
.compare(expected)
.withTest(message.getInboundProperty('webServiceRequest'))
.withNodeFilter(node -> !node.getNodeName().equals('EffectiveDate'))
.build()
出於某種原因,Groovy的抱怨 「 - >」 ..
Script3.groovy: 10: unexpected token: -> @ line 10, column 34.
.withNodeFilter(node -> !node.getNodeName().equals(EffectiveDate))
我不明白這一點。我認爲Groovy沒有問題?我錯過了什麼嗎?
你可能會使用Groovy版本不支持Java 8的lambda語法。然而,你仍然可以在需要Lambda的地方使用閉包,所以'.withNodeFilter {node - >!node.getNodeName()。equals('EffectiveDate')}'應該這樣做。 – dmahapatro
謝謝。你的評論在這裏幫了我很多。這比提供的建議答案更有意義,並使我解決了我的問題。 – Richie