2016-09-20 2 views
0

J'ai installé la boîte à outils de traitement par lots JZOS (version AlphaWorks) sur z/OS:boîte à outils de traitement par lots JZOS - L'intégration du JZOS Cobol enregistrement Générateur

 - sampjcl.xmit (RECGEN ...) 
     - loadlib.xmit (JVMLDM76 ...) 
     - jzos.pax (jzos_recgen.jar , ibmjzos.jar ...) 

J'utilise le jzos_recgen.jar pour générer des classes Java à partir COBOL Cahiers basé sur Java classe:

com.ibm.jzos.recordgen.cobol.RecordClassGenerator (given by jzos_recgen.jar)

Après avoir soumis le JCL 'RECGEN' je reçois les classes Java générées mais avec des avertissements:

JZOS batch Launcher Version '2.4.8 2015-10-28' does not match jzos.jar Version '2.4.3 developerWorks 2011-10-11' 

Je comprends maintenant que la boîte à outils batch JZOS est fournie par IBM Java SDK, j'utilise Java version J8.0_64, les ressources sont séparées dans différents dossiers (// mvstools,/lib/ext). Mais je ne peux pas trouver le jzos_recgen.jar ou le Java Class RecordClassGenerator.

J'essaie de mettre le lanceur par lots JZOS et jzos.jar dans la même version.

Je serais reconnaissant si quelqu'un sait où puis-je trouver le RecordClassGenerator sur le système de fichiers z/OS? ou une solution similaire à ma situation?

Merci.

+0

Il n'y a aucun moyen pour nous de savoir où les choses sont installées dans votre boutique. Nous pouvons deviner, basé sur notre propre expérience, mais cela restera une supposition. Demandez à vos pairs, à votre personnel de soutien et/ou à la personne qui a effectué l'installation. – cschneid

+0

@cschneid merci pour votre coopération. Je doute que la classe RecordClassGenerator ait été structurée différemment dans la version 8 de Java. Ce que je demande, c'est si quelqu'un avait le même avertissement et le résolvait en utilisant la version JZOS "IBM Java SDK". –

+0

Il est peut-être préférable de l'afficher sur la liste de diffusion IBM-MAIN Listserv. Gratuit pour vous abonner, et les gens là-bas avec une connaissance de Java sur z/OS. –

Répondre

1

Vous devez donc spécifier une option pour forcer Java à utiliser la version JZOS d'AlphaWorks, pas à partir du SDK. Dans l'échantillon JCL je de JZOS, je peux voir ceci:

# Force the alphaWorks version of JZOS to run overriding the SDK    
OPTS="-Djava.ext.dirs=£{JZOSAW_HOME}:£{JAVA_HOME}/lib/ext"      
export JZOS_JVM_OPTIONS="£OPTS"             

Si je prends ces lignes, j'obtiens une erreur similaire comme on le voit ci-dessus.

+0

Je suppose que vous utilisez un clavier britannique que les signes du dollar pour les variables sont sortis comme des livres :) –

+0

Oui, c'est toujours un problème, quand les dollars deviennent livres et vice versa! – James

1

Merci James pour votre réponse, je viens de résoudre le problème, il semble que le générateur d'enregistrement JZOS n'a pas encore été intégré dans IBM Java SDK. donc ce que nous devons faire est de configurer tous les différents chemins manuellement et d'adapter l'exemple COBGEN JCL.

Ceci est un exemple de configurations de chemins:

export JAVA_HOME=/usr/lpp/java/J8.0_64 
JZOSAW_HOME=/u/USERID/jzos 

export PATH=/bin:"${JAVA_HOME}"/bin: 

LIBPATH=/lib:/usr/lib:"${JAVA_HOME}"/bin 
LIBPATH="$LIBPATH":"${JAVA_HOME}"/bin/classic 
LIBPATH="$LIBPATH":"${JAVA_HOME}"/lib/s390x #libjzos.so 
export LIBPATH="$LIBPATH": 

CLASSPATH="$CLASSPATH":"${JAVA_HOME}"/lib/ext/ibmjzos.jar #JZOS_APIs 
CLASSPATH="$CLASSPATH":"${JZOSAW_HOME}"/jzos_recgen.jar #RecordClassGenerator 
export CLASSPATH="$CLASSPATH": 
  • Configurer un libpath pour libjzos.so // IBM Java SDK
  • Configurer un classpath pour ibmjzos.jar // IBM Java SDK
  • Configurer un chemin de classe pour Jzos_recgen.jar // Version JZOS AlphaWorks contenant la classe "RecordClassGenerator"
  • Supprimer les lignes de "Forcer la version alphaWorks de JZOS à s'exécuter en remplaçant le SDK "