¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Geração de Classes Java JAXB a partir de Arquivos XSD com ANT e Padrão de Chamada SEO

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 8 Vistas
0
Cargando...

Criei um novo objetivo, que é gerar classes Java JAXB com base em arquivos XSD, alinhado com outros objetivos ANT predefinidos na extensão existente, mas não sei como será chamado, ou qual será o padrão de chamada aqui.

     <target name="generate-myextension-jaxb-files">
         <taskdef name="xjc" classname="com.sun.tools.xjc.XJCTask">
             <classpath>
                 <fileset dir="${ext.core.path}/lib" includes="*.jar" />
                 <fileset dir="${ext.cockpit.path}/antlib" includes="*.jar" />
             </classpath>
         </taskdef>
         <echo>Gerando arquivos JAXB</echo>
         <xjc
                 destdir="${ext.myextension.path}/src"
                 schema="${ext.myextension.path}/resources/123.xsd"
                 package="a.b.c">
             <produces dir="${ext.myextension.path}/a/b/c">
                 <include name="*.java"/>
             </produces>
             <depends file="${ext.myextension.path}/resources/123.xsd"/>
         </xjc>
     </target>

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

3 Respuestas

0
Cargando...

O padrão Hybris comum aqui é colocar a tarefa que realiza em uma macro e chamá-la das macros de retorno de chamada e de um objetivo.

por exemplo.

 <macrodef name="generate-myextension-jaxb-files-executor">
    <!-- do the work here, e.g. call xjc -->
 </macrodef>
 <macrodef name="myextension_before_build">
    <generate-myextension-jaxb-files-executor/>
 </macrodef>
 <target name="generate-myextension-jaxb-files">
     <generate-myextension-jaxb-files-executor/>
 </target>

Consulte o buildcallbacks.xml da sua extensão de loja para ver exemplos.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Claro, esta es la forma habitual de hacerlo. Pensé que estabas preguntando cómo hacer que se llame como parte del proceso de construcción y poder ser llamado a través de un objetivo regular.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Apenas para registro, solução encontrada: direciono todo o conteúdo alvo em macrodef:

 <macrodef name="myexten_before_build">
     <sequential>
         <xjc
                 destdir="${ext.myexten.path}/src"
                 schema="${ext.myexten.path}/resources/ABC.xsd"
                 package="this.is.a.package">
             <produces dir="${ext.myexten.path}/src/this/is/a/package">
                 <include name="*.java"/>
             </produces>
             <depends file="${ext.myexten.path}/resources/ABC.xsd"/>
         </xjc>
     </sequential>
 </macrodef>
Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?