Установка скоростных свойств

У меня есть случай, когда я создаю архетип maven, где я хочу сделать что-то вроде этого

#set( $controllerPackage = ${package}\.${artifactId})

т.е. установите переменную controllerPackage равной результату объединения строк следующих трех элементов ($ package, '.', $ artifactId)

Однако это явно неправильный синтаксис - я получаю это

Лексическая ошибка: org.apache.velocity.runtime.parser.TokenMgrError: Лексическая ошибка в строке 4, столбце 40. Обнаружено: "." (46), после: "\"

Есть ли способ включить точку в выводимую строку?


person Shaun Hare    schedule 16.11.2010    source источник


Ответы (2)


Чтобы построить строку, используйте кавычки.

#set( $controllerPackage = "${package}.${artifactId}" )
person Nathan Bubna    schedule 16.11.2010

Вы можете использовать + для конкатенации строк:

#set( $controllerPackage = ${package} + "." + ${artifactId})
person serg    schedule 16.11.2010
comment
Я не мог заставить это работать внутри архетипа - я решил проблему, что означало, что мне нужно было использовать свойства отдельно, как указано выше - person Shaun Hare; 24.11.2010