¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

¡Acceso SAP S/4HANA desde $100!

Acceso a SAP

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
  • 20 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@primeconsultor.com

+1 (305) 285-8622

© 2025 Todos los derechos reservados.

Desarrollado por Prime Consultor

¡Hola! Soy Diana, asesora académica de Prime Consultor, indícame en que Academia SAP estás interesado, saludos!
Hola ¿Buscas Academias SAP?