2008-12-08 17 views
10

Cómo agregar una nueva variable para insertarla en una plantilla de código Java. ¿Cómo agrego una variable a la lista en Ventana-> Preferencias-> Java-> Estilo de código-> Plantillas de código-> Código-> Nuevos archivos Java-> Editar-> Insertar variable ...?Variable personalizada Eclipse para plantillas de código Java

Actualmente mis nuevos archivos se crean con:

${filecomment} 
${package_declaration} 
${typecomment} 
${type_declaration} 

me gustaría que se crean con algo como:

${begin_filecomment} 
${package_declaration} 
${typecomment} 
${type_declaration} 
${end_filecomment} 

donde begin_filecomment y end_filecomment aparecen en la lista Insertar variable.

Respuesta

8

Estoy bastante seguro de que Eclipse genera la lista de "variables" y no hay forma de agregar una nueva variable de plantilla.

¿Qué quieres ${begin_filecomment} y ${end_filecomment} para estar? Simplemente escriba el contenido en el cuadro Editar; no hay nada que diga que no puede poner contenido estático allí.

11

Sí, de hecho puede agregar una variable a esta lista. Ver el punto de extensión llamado

org.eclipse.ui.editors.templates

y usted encontrará la manera.

3

Yo no lo probamos, pero tal vez usted podría editar los archivos de plantilla en el frasco JDT:

eclipse\plugins\org.eclipse.jdt.ui_*.jar\templates\ 
7

aportar una nueva variable, es necesario crear un plugin y poner en práctica la org.eclipse. ui.editors.templates punto de extensión.

Debe contribuir con una subclase de org.eclipse.jface.text.templates.TemplateVariableResolver que implementará los diversos métodos de resolución para resolver el marcador de posición con sus valores deseados.

Consulte here para obtener ayuda sobre el punto de extensión y un ejemplo que aporta las variables ant.

Como dice matt b, a menudo solo necesitas definir tu texto como texto estándar, por lo que implementar una variable para eso es exagerado.

0

para añadir a la conversación, también quería insertar una variable personalizada en una plantilla. Mi problema era que quería insertar una variable de la definición jsp/jstl dentro de la plantilla.

(POR EJEMPLO <c:set var="myVariable" value="${requestScope.variableName}" />)

Al parecer, esto causó algunos problemas debido a las plantillas ya utilizan la sintaxis ${} para ayudar a resolver sus propias variables.

Solución tan simple Incluí un $ adicional en el patrón de la plantilla. Dos signos $$ lo resuelven en un solo signo $, por lo tanto, dándome exactamente lo que quería. Espero que esto ayude al póster o a alguien con una situación similar.

Cuestiones relacionadas