консоль grails не может выполнить скрипт после того, как он открыт как .groovy - PullRequest
0 голосов
/ 24 февраля 2012

Я использую консоль grails для тестирования своего кода, так как считаю очень непродуктивным эффективно выполнять даже базовые модульные тесты из STS.

Во всяком случае, когда я вырезал и вставил код в консоль, он работает нормально. Однако, когда я сохраняю фрагмент кода в виде скрипта .groovy, а затем снова открываю его и пытаюсь запустить его, происходит сбой с использованием универсального кода:

groovy.lang.MissingPropertyException: No such property: xxx for class: yyy

Сценарий работает нормально, если я скопирую код и вставлю в новое окно!

Есть идеи, почему это может происходить?

1 Ответ

0 голосов
/ 25 февраля 2012

Я обнаружил, что с этим не так, и хотел обновить здесь, если это будет полезно для кого-то еще.

Один из моих доменных объектов называется:

HierarchyNode 

, и я сохранилОтличный скрипт как HierarchyNode.grooy.

В результате, когда в консоли был выполнен следующий код, произошел сбой:

def root = new HierarchyNode(['name': 'Root Node', 'company': comp, 'customer': cust, 'isRoot': true, 'nodeProperties': ['prop1': 'value1', 'prop2': 'value2']]) 

с этим исключением:

groovy.lang.MissingPropertyException: No such property: name for class: HierarchyNode at HierarchyNode.run(HierarchyNode.groovy:6) 

Переименование сценария, чтобы не конфликтоватьс объектом домена решена проблема.

...