Aller au contenu

JAVA

Exécuter un programme Java

En bref

La commande Exécuter un programme Java (JAVA) exécute le programme Java associé à la classe Java indiquée. The Run Java Program (JAVA) command runs the Java program associated with the specified Java class.

Syntaxe minimale

JAVA CLASS(…)

Paramètres

Astuce : dans une session 5250, tapez JAVA puis F4 pour l'invite de saisie, et F1 sur un paramètre pour son aide.

Aide IBM i de la commande

Texte du F1, IBM i 7.5 en français (bibliothèque QJAVA)

Où s'exécute : Tous les environnements (*ALL)
Compatible multitâche : Non

La commande Exécuter un programme Java (JAVA) exécute le programme Java associé à la classe Java indiquée. Si aucun programme Java n'existe, il en est créé un, associé au fichier de classe. The Run Java Program (JAVA) command runs the Java program associated with the specified Java class. If no Java program exists, one is created and associated with the class file.

Cette commande peut opérer sur des fichiers de n'importe quel système de fichiers prenant en charge les API du système de fichiers intégré. This command can operate on files in any file system that supports the integrated file system APIs.

Paramètres

Mot-clé Description Valeurs possibles Remarques
CLASS Fichier de classe ou fich JAR Chemin d'accès, *VERSION Obligatoire, positionnel 1
PARM Paramètres Valeurs uniques: *NONE
Autres valeurs (jusqu'à 200 répétitions): Valeur caractère
Facultatif, positionnel 2
MAINCLASS Classe principale de module *YES, *NO Facultatif
CLASSPATH Chemin de classe Chemin d'accès, *ENVVAR Facultatif
MODULEPATH Chemin module Chemin d'accès, *NONE Facultatif
CHKPATH Niv ctrl sécurit chemin classe *WARN, *SECURE, *IGNORE Facultatif
OPTIMIZE Optimisation *JIT, *INTERPRET, 10, 20, 30, 40 Facultatif
INTERPRET Interprétation *OPTIMIZE, *YES, *NO, *JIT Facultatif
PROP Propriétés Valeurs uniques: *NONE
Autres valeurs (jusqu'à 200 répétitions): Liste d'éléments
Facultatif
Élément 1: Nom de propriété Chemin d'accès
Élément 2: Valeur de propriété Valeur caractère, X''
GCHINL Taille init récupération place 256-240000000, *DFT Facultatif
GCHMAX Taille max récupération place 256-240000000, *DFT, *NOMAX Facultatif
GCFRQ Fréquence récupération place 0-100, 50 Facultatif
GCPTY Priorité récupération de place 20, 10, 30 Facultatif
OPTION Option Values (jusqu'à 4 répétitions): *NONE, *VERBOSE, *DEBUG, *VERBOSEGC, *NOCLASSGC Facultatif
JOB Travail Nom, QJVACMDSRV, *GEN Facultatif
AGTPGM Programme agent Valeurs uniques: *NONE
Autres valeurs: Nom d'objet qualifié
Facultatif
Qualificatif 1: Programme agent Nom
Qualificatif 2: Biblio Nom, *LIBL, *CURLIB
AGTOPTIONS Options d'agent Valeur caractère, *NONE Facultatif
OUTPUT Sortie Valeurs uniques: *PRINT, *NONE
Autres valeurs: Liste d'éléments
Facultatif
Élément 1: Destination *
Élément 2: Action d'arrêt programme *PAUSE, *CONTINUE

Fichier de classe ou fichier JAR (CLASS)Class file or JAR file (CLASS)

Indique le nom de classe ou le fichier JAR à exécuter. Le nom de classe peut être qualifié par un ou plusieurs noms de package. Chaque nom de package doit être suivi d'un point. Par exemple, CLASS('pkg1.pkg2.myclass') identifie une classe qualifiée par deux noms de package. Specifies the class name or jar file to be run. The class name may be qualified by one or more package names. Each package name must be followed by a period. For example, CLASS('pkg1.pkg2.myclass') identifies a class qualified by two package names.

Un nom de fichier JAR ne peut être indiqué que lors de l'exécution de JDK 1.2 ou d'une version supérieure. La classe de démarrage doit être indiquée par Main-Class dans l'en-tête du manifeste. A jar file name may be specified only when running JDK 1.2 or higher. The start up class must be indicated by the Main-Class in the manifest header.

class-name
Indiquez le nom de la classe à exécuter. Specify the name of the class to be run.
jar-name
Indiquez le nom du fichier JAR dont la Main-Class est indiquée dans le manifeste. Specify the name of the jar file with the Main-Class specified in the manifest.
*VERSION
Les informations de version de build du kit JDK (Java Development Kit) et de la machine virtuelle Java (JVM) sont affichées. Aucun programme Java n'est exécuté. The build version information for the Java Development Kit (JDK) and the Java Virtual Machine (JVM) is displayed. No Java program is run.

Paramètres (PARM)Parameters (PARM)

Indique une ou plusieurs valeurs de paramètre transmises au programme Java. Un maximum de 200 valeurs de paramètre peuvent être transmises. Specifies one or more parameter values that are passed to the Java program. A maximum of 200 parameter values can be passed.

*NONE
Le programme Java n'a aucun paramètre d'entrée. There are no input parameters to the Java program.
parameter-value
Indiquez la valeur de paramètre à transmettre au programme Java. Specify the parameter value to be passed to the Java program.

Classe principale du module (MAINCLASS)Module main class (MAINCLASS)

Indique le nom de la classe principale d'un module à exécuter. Le nom de la classe principale est soit un nom de module, soit module-name/main-class. Specifies the main class name in a module to be run. The main class name is either a module name or module-name/main-class.

module-name
Indiquez le nom du module principal à exécuter. La classe principale du module est obtenue à partir du descripteur de module (attribut MainClass). Specify the main module name to be run. The module's main class is obtained from the module descriptor (MainClass attribute).
module-name/main-class
Indiquez le nom du module principal et le nom de la classe principale à exécuter. Specify the main module name and main class name to be run.

Chemin de classes (CLASSPATH)Classpath (CLASSPATH)

Indique le chemin utilisé pour localiser les classes. Les répertoires sont séparés par des deux-points. Specifies the path used to locate classes. Directories are separated by colons.

*ENVVAR
Le chemin de classes est déterminé par la variable d'environnement CLASSPATH. The class path is determined by the environment variable CLASSPATH.
class-path
Chemin utilisé pour localiser les classes. Un exemple de chemin de classes est '/directory1/directory2:/QIBM/ProdData/Java400'. Path used to locate classes. An example class path is '/directory1/directory2:/QIBM/ProdData/Java400'.

Chemin de modules (MODULEPATH)Modulepath (MODULEPATH)

Indique le chemin utilisé pour localiser les modules. Les répertoires sont séparés par des deux-points. Specifies the path used to locate modules. Directories are separated by colons.

module-path
Chemin utilisé pour localiser les modules. Path used to locate modules.

Niveau de contrôle de sécurité du chemin de classes (CHKPATH)Classpath security check level (CHKPATH)

Indique le niveau des avertissements émis pour les répertoires du CLASSPATH qui possèdent le droit d'écriture public. Un répertoire du CLASSPATH possédant le droit d'écriture public constitue une exposition de sécurité, car il peut contenir un fichier de classe portant le même nom que celui que vous souhaitez exécuter. Le premier fichier de classe trouvé est exécuté. Specifies the level of warnings given for directories in the CLASSPATH that have public write authority. A directory in the CLASSPATH that has public write authority is a security exposure because it may contain a class file with the same name as the one you want to run. Whichever class file is found first is run.

*WARN
Un message d'avertissement est envoyé pour chaque répertoire du CLASSPATH possédant le droit d'écriture public. A warning message is sent for each directory in the CLASSPATH that has public write authority.
*SECURE
Un message d'avertissement est envoyé pour chaque répertoire du CLASSPATH possédant le droit d'écriture public. Si un ou plusieurs messages d'avertissement sont envoyés, un message *ESCAPE est envoyé et le programme Java n'est pas exécuté. A warning message is sent for each directory in the CLASSPATH that has public write authority. If one or more warning messages are sent, an escape message is sent and the Java program is not run.
*IGNORE
Ignorez le fait que des répertoires du CLASSPATH peuvent posséder le droit d'écriture public. Aucun message d'avertissement n'est envoyé. Ignore the fact that directories in the CLASSPATH may have public write authority. No warnings messages are sent.

Optimisation (OPTIMIZE)Optimization (OPTIMIZE)

Ce paramètre n'est plus pris en charge. Il n'existe que pour assurer la compatibilité avec les versions antérieures à V7R2M0. This parameter is no longer supported. It exists solely for compatibility with the releases earlier than Version 7 Release 2 Modification 0.

Interpréter (INTERPRET)Interpret (INTERPRET)

Ce paramètre n'est plus pris en charge. Il n'existe que pour assurer la compatibilité avec les versions antérieures à V7R2M0. This parameter is no longer supported. It exists solely for compatibility with the releases earlier than Version 7 Release 2 Modification 0.

Propriétés (PROP)Properties (PROP)

Indique une liste de valeurs à affecter à des propriétés Java. Une valeur peut être affectée à 200 propriétés au maximum. Specifies a list of values to assign to Java properties. Up to 200 properties can have a value assigned.

Valeurs uniques

*NONE
Aucune propriété n'est indiquée. No properties are specified.

Élément 1: Property name

property-name
Indiquez le nom de la propriété à modifier. Specify the name of the property to be changed.

Élément 2: Property value

property-value
Indiquez la valeur à affecter à la propriété. Specify the value to be assigned to the property.

Taille initiale de la récupération de place (GCHINL)Garbage collect initial size (GCHINL)

Indique la taille initiale, en kilo-octets, du segment (heap) de récupération de place. Elle sert à empêcher le démarrage de la récupération de place sur de petits programmes. Specifies the initial size, in kilobytes, of the garbage collection heap. This is used to prevent garbage collection from starting on small programs.

*DFT
La taille initiale par défaut est de 16384 kilo-octets, sauf si elle est remplacée par une propriété. The default initial size is 16384 kilobytes unless it is overridden by a property.
256-240000000
Indiquez la taille initiale, en kilo-octets, du segment (heap) de récupération de place. Il est recommandé de définir la taille initiale du segment à 16384 kilo-octets (valeur par défaut) ou plus. Specify the initial size, in kilobytes, of the garbage collection heap. It is recommended that the initial heap size be set to 16384 kilobytes (the default) or larger.

Taille maximale de la récupération de place (GCHMAX)Garbage collect maximum size (GCHMAX)

Indique la taille maximale, en kilo-octets, que le segment (heap) de récupération de place peut atteindre. Elle sert à empêcher les programmes incontrôlés de consommer toute la mémoire disponible. Normalement, la récupération de place s'exécute comme une unité d'exécution asynchrone en parallèle avec les autres unités d'exécution. Si la taille maximale est atteinte, toutes les autres unités d'exécution sont arrêtées pendant la récupération de place. Cela peut nuire aux performances. Specifies the maximum size, in kilobytes, that the garbage collection heap can grow to. This is used to prevent runaway programs that consume all of the available storage. Normally, garbage collection runs as an asynchronous thread in parallel with other threads. If the maximum size is reached, all other threads are stopped while garbage collection takes place. This may adversely affect performance.

*DFT
La valeur par défaut du paramètre est utilisée. Le maximum par défaut est déterminé par le système, sauf si une propriété est indiquée. Le segment (heap) grandira jusqu'à épuisement de toutes les ressources système. Une récupération de place synchrone est alors lancée pour récupérer les ressources qui ne sont plus utilisées. The default for the parameter is used. The default maximum is determined by the system unless a property is specified. The heap will grow until all system resources are depleted. Then a synchronous garbage collection is started to reclaim resources no longer in use.
*NOMAX
La taille maximale n'est pas indiquée par l'utilisateur. Le maximum est déterminé par le système. Le segment (heap) grandira jusqu'à épuisement de toutes les ressources système. Une récupération de place synchrone est alors lancée pour récupérer les ressources qui ne sont plus utilisées. The maximum size is not specified by the user. The maximum is determined by the system. The heap will grow until all system resources are depleted. Then a synchronous garbage collection is started to reclaim resources no longer in use.
256-240000000
Indiquez la taille, en kilo-octets, que le segment (heap) de récupération de place peut atteindre. Specify the size, in kilobytes, that the garbage collection heap can grow to.

Fréquence de récupération de place (GCFRQ)Garbage collection frequency (GCFRQ)

Ce paramètre n'est plus pris en charge. Il n'existe que pour assurer la compatibilité avec les versions antérieures à V4R3M0. This parameter is no longer supported. It exists solely for compatibility with the releases earlier than Version 4 Release 3 Modification 0.

Priorité de récupération de place (GCPTY)Garbage collection priority (GCPTY)

Ce paramètre n'est plus pris en charge. Il n'existe que pour assurer la compatibilité avec les versions antérieures à V4R3M0. This parameter is no longer supported. It exists solely for compatibility with the releases earlier than Version 4 Release 3 Modification 0.

Option (OPTION)

Indique les options spéciales utilisées lors de l'exécution de la classe Java. Specifies special options used when running the Java class.

*NONE
Aucune option spéciale n'est utilisée lors de l'exécution de la classe Java. No special options are used when running the Java class.
*VERBOSE
Un message est affiché chaque fois qu'un fichier de classe est chargé. A message is displayed each time a class file is loaded.
*DEBUG
Permet d'utiliser le débogueur système pour ce programme Java. Cette valeur ne peut pas être utilisée avec le compilateur JIT. Autrement dit, *DEBUG et INTERPRET(*JIT) s'excluent mutuellement. De plus, *DEBUG ne peut pas être utilisée lorsqu'un fichier JAR est indiqué pour le mot clé CLASS. Allows the system debugger to be used for this Java program. This value cannot be used with the JIT compiler. That is, *DEBUG is mutually exclusive with INTERPRET(*JIT). Also, *DEBUG cannot be used when a JAR file is specified for the CLASS keyword.
*VERBOSEGC
Un message est affiché pour chaque passage de récupération de place. A message is displayed for each garbage collection sweep.
*NOCLASSGC
Les classes inutilisées ne sont pas récupérées lors de l'exécution de la récupération de place. Unused classes are not reclaimed when garbage collection is run.

Nom du travail (JOB)Job name (JOB)

Indique le nom associé au travail BCI (batch immediate) démarré lors de l'exécution de cette commande. Le programme Java s'exécute dans le travail BCI. Specifies the name that is associated with the batch immediate (BCI) job that is started when this command is run. The BCI job is where the Java program will be run.

QJVACMDSRV
Le nom du travail BCI sera QJVACMDSRV. The job name for the BCI job will be QJVACMDSRV.
*GEN
Le nom du travail est généré à partir du nom de la classe. The job name is generated from the class name.
nom
Indiquez le nom à utiliser pour le travail BCI qui sert à exécuter le programme Java. Specify the name to be used for the BCI job that is used to run the Java program.

Programme agent (AGTPGM)Agent program (AGTPGM)

Indique un programme de service ILE ou un programme i5/OS PASE qui contient un agent de machine virtuelle (VM). Par exemple, un agent de VM peut être un débogueur ou un outil de profilage éloigné. La VM charge le programme agent et recherche le point d'entrée : Specifies an ILE service program or i5/OS PASE program that contains a virtual machine (VM) agent. For example, a VM agent can be a remote debugger or profiler. The VM loads the agent program and looks for the entry point:

jint JNICALL JVM_OnLoad(JavaVM *jvm, char *options, void *reserved);

La VM appelle la fonction JVM_OnLoad, en transmettant un pointeur vers l'instance JavaVM comme premier argument et la chaîne de caractères indiquée dans le paramètre AGTOPTIONS comme second argument. Le troisième argument de JVM_OnLoad est réservé et défini sur NULL. The VM calls the JVM_OnLoad function, passing a pointer to the JavaVM instance as the first argument, and the character string specified in the AGTOPTIONS parameter as the second argument. The third argument to JVM_OnLoad is reserved and set to NULL.

Valeurs uniques

*NONE
Aucun programme agent de VM n'est indiqué. No VM agent program is specified.

Qualificatif 1: Programme agent Qualificatif 1: Agent program

nom
Indiquez le nom du programme agent de VM. Specify the name of the VM agent program.

Qualificatif 2 : Bibliothèque Qualificatif 2: Library

*LIBL
Toutes les bibliothèques de la liste de bibliothèques de l'unité d'exécution en cours sont parcourues jusqu'à ce qu'une première correspondance soit trouvée. Si l'agent de VM est un programme i5/OS PASE, les répertoires contenus dans les variables d'environnement LIBPATH et PASE_LIBPATH sont utilisés pour localiser le programme. All libraries in the library list for the current thread are searched until the first match is found. If the VM agent is an i5/OS PASE program, the directories contained in the LIBPATH and PASE_LIBPATH environment variables are used to locate the program.
*CURLIB
La bibliothèque en cours de l'unité d'exécution est recherchée. Si aucune bibliothèque en cours n'est définie pour l'unité d'exécution, la bibliothèque QGPL est recherchée. The current library for the thread is searched. If no library is specified as the current library for the thread, the QGPL library is searched.
nom
Indiquez le nom de la bibliothèque à rechercher. Specify the name of the library to be searched.

Options d'agent (AGTOPTIONS)Agent options (AGTOPTIONS)

Indique une chaîne de caractères d'options d'agent de machine virtuelle (VM). Un pointeur vers cette chaîne de caractères sera transmis comme second argument à la fonction JVM_OnLoad du programme agent de VM indiqué dans le paramètre AGTPGM. Le format de la chaîne d'options est déterminé par le programme agent. Specifies a character string of the virtual machine (VM) agent options. A pointer to this character string will be passed as the second argument to the JVM_OnLoad function in the VM agent program specified in the AGTPGM parameter. The format of the options string is determined by the agent program.

*NONE
Aucune option n'est indiquée. Un argument d'options NULL sera transmis à la fonction JVM_OnLoad. No options are specified. A NULL options argument will be passed to the JVM_OnLoad function.
valeur-caractère
Indiquez la chaîne d'options à transmettre au programme agent de VM au démarrage. Specify the options string to be passed to the VM agent program on start-up.

Sortie (OUTPUT)Output (OUTPUT)

Indique où la sortie du programme Java doit être envoyée et, si la sortie est dirigée vers l'écran du shell Java, si le panneau de l'écran du shell doit disparaître à la fin du programme Java. Specifies where output from the Java program should be sent and, if output is directed to the Java shell display, whether the shell display panel should go away when the Java program ends.

Valeurs uniques

*PRINT
La sortie du programme Java est envoyée vers un fichier spoule via le fichier d'unité d'imprimante QPRINT. The Java program output is sent to a spooled file through the QPRINT printer device file.
*NONE
La sortie du programme Java est ignorée. The Java program output is discarded.

Élément 1: Destination

*
Un panneau d'écran du shell Java sera utilisé pour afficher la sortie si le programme Java est exécuté à partir d'un travail interactif. Si le programme Java est exécuté dans un travail par lots, la sortie du programme Java est envoyée vers un fichier spoule via le fichier d'unité d'imprimante QPRINT. A Java shell display panel will be used to display output if the Java program is run from an interactive job. If the Java program is run in a batch job, the Java program output is sent to a spooled file through the QPRINT printer device file.

Élément 2: Program end action

*PAUSE
Le panneau d'écran du shell Java reste affiché jusqu'à ce que la touche F3, F12 ou Entrée soit actionnée. The Java shell display panel is shown until the F3, F12, or Enter key is pressed.
*CONTINUE
Le panneau d'écran du shell Java est fermé (disparaît) à la fin du programme Java. The Java shell display panel is closed (goes away) when the Java program ends.

Exemples

Exemple 1 : Exécution d'un programme Java Example 1: Run a Java Program

JAVA   CLASS('projectA.myJavaclassname')

Cette commande exécute le programme Java i5/OS associé à la classe myJavaclassname. Le nom du travail BCI (batch immediate) dans lequel le programme Java s'exécutera sera QJVACMDSRV. This command will run the i5/OS Java program associated with the class myJavaclassname. The job name of the batch immediate (BCI) job where the Java program will run will be QJVACMDSRV.

Exemple 2 : Génération du nom de travail pour le programme Java Example 2: Generate the Job Name for the Java Program

JAVA   CLASS('projectA.myJavaclassname') JOB(*GEN)

Cette commande exécute le programme Java i5/OS associé à la classe myJavaclassname. Le nom du travail BCI (batch immediate) dans lequel le programme Java s'exécutera sera MYJAVACLAS. This command will run the i5/OS Java program associated with the class myJavaclassname. The job name of the batch immediate (BCI) job where the Java program will run will be MYJAVACLAS.

Messages d'erreur

Messages *ESCAPE *ESCAPE Messages

JVAB534
Impossible d'exécuter le programme Java "&1". Unable to complete Java program "&1".
JVAB537
Le shell Java est déjà actif dans le travail. Java shell already active in job.
JVAB538
Une erreur s'est produite lors de l'exécution du shell Java. Error occurred when running Java shell.
JVAB539
Impossible de démarrer le débogueur système. Unable to start system debugger.
JVAB53A
Impossible de démarrer le shell Java, code anomalie &1. Unable to start Java shell, reason code &1.
JVAB53B
Le traitement Java a été annulé. Java processing canceled.
JVAB53D
Le kit Java Development Kit est introuvable. Java Development Kit could not be found.
JVAB546
Erreur détectée lors de l'exécution de Java en mode traitement par lots. Error detected while running java in batch mode.

© Copyright IBM Corp. Texte d'aide reproduit à des fins de formation.