Document revision date: 19 July 1999
[Compaq] [Go to the documentation home page] [How to order documentation] [Help on this site] [How to contact us]
[OpenVMS documentation]

OpenVMS DCL Dictionary


Previous Contents Index

The INQUIRE command prompts for a count with the following message:


COUNT: 

Then the command procedure uses the value of the symbol COUNT to determine whether to execute the next sequence of commands or to transfer control to the line labeled SKIP.
#3

$ IF P1 .EQS. "" THEN INQUIRE P1 "FILE NAME" 
$ FORTRAN 'P1' 
      

The IF command checks whether a parameter was passed to the command procedure by checking if the symbol P1 is null; if it is, it means that no parameter was specified, and the INQUIRE command is issued to prompt for the parameter. If P1 was specified, the INQUIRE command is not executed, and the FORTRAN command compiles the name of the file specified as a parameter.


INSTALL

Invokes the Install utility, which enhances the performance of selected executable and shareable images by making them "known" to the system and assigning them appropriate attributes.

For more information about the Install utility, refer to the OpenVMS System Management Utilities Reference Manual or online help.


Format

INSTALL [subcommand] [filespec]


JAVA

The JAVA command invokes an interpreter that executes Java bytecodes. It executes Java class files created by a Java compiler, such as JAVAC.

This reference page describes the JAVA command only.

If the JDK documentation was installed on your OpenVMS system, you can view documentation on the JDK tools (commands) and other Java reference material by pointing your browser to the following location:


SYS$COMMON:[SYSHLP.JAVA]INDEX.HTML 


Format

JAVA "classname" args


Parameters

"classname"

The name of the class to be executed, enclosed in quotation marks. The classname parameter must be fully qualified by including its package in the name, for example:


$ JAVA "java.lang.String" 

In this example, JAVA interprets the directory path to be [JAVA.LANG], and the file name of the class to be STRING.CLASS.

args

Arguments that are passed to the main method of the class.

Description

Java expects the binary representation of the class to be in a file called file-name.CLASS, which is generated by compiling the corresponding source file with the JAVAC compiler. All Java class files end with the file name extension .CLASS, which the compiler automatically adds when the class is compiled. The class to be executed must contain a main method defined as follows:


class Aclass { 
    public static void main(String argv[]){ 
        . . . 
    } 
} 

The Java interpreter executes the main method and then exits, unless main creates one or more threads. If any threads are created by main, then the JAVA command does not exit until the last thread exits.

When you define your own classes, you need to specify their location. Use the logicals CLASSPATH (for a UNIX style directory path) or JAVA$CLASSPATH (for an OpenVMS style directory path) to do this.

The CLASSPATH logical consists of a colon-separated list of directories that specifies the path. For example:


.:/home/xyz/classes:/usr/local/java/classes 

Also, unlike on UNIX systems, you must also explicitly specify the system classes on CLASSPATH. For example:


   $ define/nolog CLASSPATH "/sys$common/java/lib/JDK116_CLASSES.ZIP:." 

The JAVA$CLASSPATH logical lets you define a classpath using OpenVMS filespecs.

The following two sample statements accomplish the same result:


   $ DEF JAVA$CLASSPATH USER1$:[SMITH.KIT]JDK115_CLASSES.ZIP,[] 
 
   $ DEF CLASSPATH "/user1$/smith/kit/jdk115_class.zip:." 

Note that:

Note

All Java files that are to be read by any of the java tools or that serve as input class libraries (listed in CLASSPATH) must be in Stream_LF format.

To determine the record format of your file, do the following:


    $ DIR/FULL MyFile.java 

And observe the line:


    Record format 

By default, a file initially created on an OpenVMS system, with a text editor for example, will have variable-length record format.

Although, for example, a *.JAVA file with variable-length record format compiles correctly if it is error-free, the compiler does not produce proper diagnostic outputs if a compilation error occurs.

To get a file into Stream_LF record format, do the following:


   $ CONVERT/FDL=SYS$INPUT input_file-name output_file-name 
   FILE 
       ALLOCATION              4 
       BEST_TRY_CONTIGUOUS     yes 
       EXTENSION               0 
       ORGANIZATION            sequential 
   RECORD 
       BLOCK_SPAN              yes 
       CARRIAGE_CONTROL        carriage_return 
       FORMAT                  stream_LF 
       SIZE                    0 

If you use a non-Stream_LF formatted file in a CLASSPATH, errors like this result:


    Unable to initialize threads: cannot find class java/lang/Thread 

Ordinarily, you compile source files with JAVAC then run the program using JAVA. However, JAVA can be used to compile and run programs when the /CHECKSOURCE qualifier is used. As each class file is loaded, its modification date is compared to the modification date of the class source file. If the source was modified more recently, it is recompiled and the new class file is loaded. JAVA repeats this procedure until all the classes are correctly compiled and loaded.

The interpreter can determine whether a class is legitimate through the mechanism of verification. Verification ensures that prior to their execution, class files do not violate any language constraints.

You can specify the qualifiers for this command as one of the following:

To use the DCL style:


    $ DEFINE JAVA$USE_DCL 1 
    $ @SYS$MANAGER:JAVA$SETUP 

To use the DIGITAL UNIX style:


    $ DEASSIGN JAVA$USE_DCL 
    $ @SYS$MANAGER:JAVA$SETUP 

Both styles are documented.


Qualifiers

/CHECKSOURCE

-cs

-checksource

When a compiled class is loaded, this option causes the modification time of the class bytecode file to be compared to that of the class source file. If the source was modified more recently, it is recompiled and the new class file is loaded.

/CLASSPATH=path

-classpath path

Specifies the path that the JAVA command uses to look up classes. Overrides the default or the CLASSPATH environment variable if it is set. Directories are separated by colons. Whether you use /CLASSPATH or -classpath, the general format for path is:


.:{your_path} 

For example:


.:/home/xyz/classes:/usr/local/java/classes 

/JIT

/NOJIT

-jit

-nojit

The Just-in-Time compiler (JIT) runs by default when you enter the java command. To run the java command with the interpreter instead of the JIT, use:


$ JAVA /NOJIT ... 

The java debugger runs the interpreter by default. To run the java debugger with the JIT compiler, the /JIT qualifier must be explicitly specified.

The JIT runs by default when you run appletviewer. To run appletviewer with the interpreter, use:


$ APPLETVIEWER /PARAMETERS="-nojit" 

/MAXHEAP=x

-mx x

Sets the maximum size of the memory allocation pool (the garbage collected heap) to x. The default is 6 megabytes of memory. The value of x must be greater than or equal to 1000 bytes.

By default, x is measured in bytes. You can specify x in either kilobytes or megabytes by appending the letter k for kilobytes or the letter m for megabytes.

/INITHEAP=x

-ms x

Sets the startup size of the memory allocation pool (the garbage collected heap) to x. The default is 6 megabytes of memory. The value of x must be greater than or equal to 1000 bytes.

By default, x is measured in bytes. You can specify x in either kilobytes or megabytes by appending the letter k for kilobytes or the letter m for megabytes.

/NOASYNCGC

-noasyncgc

Turns off asynchronous garbage collection. When activated, no garbage collection takes place unless it is explicitly called or the program runs out of memory. Normally garbage collection runs as an asynchronous thread in parallel with other threads.

/NOCLASSGC

-noclassgc

Turns off garbage collection of Java classes. By default, the Java interpreter reclaims space for unused Java classes during garbage collection.

/PROFILE[=file-name]

-prof[: file-name]

This option works only with JAVA_G.

It starts the Java Runtime with Java profiling enabled.

If no file name is specified, the profile results are placed in the file []JAVA.PROF.

Otherwise, the profile results are placed in the specified file.

/LOGLEVEL

-l

Sets the logging level (JAVA_G only).

/VERSION

-version

Prints the build version information.

/HELP

-help

Prints a usage message.

/MAXCSTACK=x

-ss x

Each Java thread has two stacks: one for Java code and one for C code. The /MAXCSTACK option sets the maximum stack size that can be used by C code in a thread to x. Every thread spawned during the execution of the program passed to JAVA has x as its C stack size. The default units for x are bytes. The value of x must be greater than or equal to 1000 bytes.

You can modify the meaning of x by appending either the letter k for kilobytes or the letter m for megabytes. The default stack size is 128 kilobytes (/MAXCSTACK=128k).

/MAXJSTACK=x

-oss x

Each Java thread has two stacks: one for Java code and one for C code. The /MAXJSTACK option sets the maximum stack size that can be used by Java code in a thread to x. Every thread spawned during the execution of the program passed to JAVA has x as its Java stack size. The default units for x are bytes. The value of x must be greater than or equal to 1000 bytes.

You can modify the meaning of x by appending either the letter k for kilobytes or the letter m for megabytes. The default stack size is 400 kilobytes (/MAXJSTACK=400k).

/TRACE

-t

Prints a trace of the instructions executed (JAVA_G only).

/COMMAND_LINE=file-name

-V file-name

Takes command-line options and arguments from the indicated file; causes other command-line options and arguments to be ignored.

This qualifier is supported on OpenVMS systems only.

/VERBOSE

-v

-verbose

Causes JAVA to print a message to stdout each time a class file is loaded.

/VERBOSEGC

-verbosegc

Causes the garbage collector to print out messages whenever it frees memory.

/VERIFY

/NOVERIFY

-verify

-noverify

Performs byte-code verification on the class file. Be aware however, that JAVA/VERIFY does not perform a full verification in all situations. Any code path that is not actually executed by the interpreter is not verified. Therefore, JAVA/VERIFY cannot be relied on to certify class files unless all code paths in the class file are actually run.

The /NOVERIFY qualifier (-noverify option) turns verification off.

/VERIFYREMOTE

-verifyremote

Runs the verifier on all code that is loaded into the system through a classloader. The default is /VERIFYREMOTE.

/SYSTEM_PROPERTY="propertyName=newValue"

-D propertyName=newValue

Redefines a property value. The propertyName is the name of the property whose value you want to change and newValue is the value to change it to. For example, the following command line sets the value of the property awt.button.color to "green".


% java -Dawt.button.color=green ... 

The JAVA command accepts any number of /SYSTEM_PROPERTY qualifiers on the command line.


Example


$ JAVA /CLASSPATH=(USER1$:[mydir1],[.mydir2],[.mydir3]myzip.zip,[])- 
                  /INITHEAP="10m"/MAXHEAP="20m"- 
                  /SYSTEM_PROPERTY="XXX=ZZZ"  "MyTestProgram" 

This example executes the Java runtime interpreter on the file MyTestProgram.class.

The search path USER1$:[mydir1],[.mydir2],[.mydir3]myzip.zip,[] is used to override the current setting of the CLASSPATH logical.

For the duration of this execution, the system property XXX is set to ZZZ. The interpreter is run with an initial heap size of 10 megabytes.

Notice that the name of the class file "MyTestProgram" must be in quotation marks to preserve the case of the spelling. Without the quotation marks, OpenVMS changes the entire string to uppercase, and the class name will not match what is in the source file.


JOB

Identifies the beginning of a batch job submitted through a card reader. Each batch job submitted through the system card reader must be preceded by a JOB card.

JOB cannot be abbreviated.


Format

JOB user-name


Parameter

user-name

Identifies the user name under which the job is to be run. Specify the user name as you would during the login procedure.

Description

The JOB card identifies the user submitting the job and is followed by a PASSWORD card giving the password. (Although the PASSWORD card is required, you do not have to use a password on the card if the account has a null password.)

The user name and password are validated by the system authorization file in the same manner as they are validated in the login procedure. The process that executes the batch job is assigned the disk and directory defaults and privileges associated with the user account. If a LOGIN.COM file exists for the specified user name, it is executed at the start of the job.

The end of a batch job is signaled by the EOJ command, by an EOF card (12-11-0-1-6-7-8-9 overpunch), or by another JOB card.


Qualifiers

/AFTER=time

Holds the job until the specified time. If the specified time has already passed, the job is queued for immediate processing.

The time can be specified as either absolute time or a combination of absolute and delta times. For complete information on specifying time values, refer to the OpenVMS User's Manual or the online help topic DCL_Tips (subtopic Date_Time).

/CHARACTERISTICS=(characteristic[,...])

Specifies one or more characteristics required for processing the job. If you specify only one characteristic, you can omit the parentheses. Codes for characteristics are installation-defined. Use the SHOW QUEUE/CHARACTERISTICS command to see which characteristics are available on your system.

All the characteristics specified for the job must also be specified for the queue that will execute the job. If not, the job remains pending in the queue until the queue characteristics are changed or the entry is deleted with the DELETE/ENTRY command. Users need not specify every characteristic of a queue with the JOB command as long as the ones they specify are a subset of the characteristics set for that queue. The job also runs if no characteristics are specified.

/CLI=filename

Specifies a different command language interpreter (CLI) with which to process the job. The filename parameter specifies that the CLI be SYS$SYSTEM:filename.EXE. The default CLI is that defined in the user authorization file (UAF).

/CPUTIME=n

Specifies a CPU time limit for the batch job. Time can be specified as delta time, 0, NONE, or INFINITE. (For information on specifying time values, refer to the OpenVMS User's Manual or the online help topic DCL_Tips (subtopic Date_Time).)

When you need less CPU time than authorized, use the /CPUTIME qualifier to override the base queue value established by the system manager or the value authorized in your UAF. Specify 0 or INFINITE to request an infinite amount of time. Specify NONE when you want the CPU time to default to your UAF value or the limit specified on the queue. Note that you cannot request more time than permitted by the base queue limits or your UAF.

/DELETE (default)

/NODELETE

Controls whether the batch input file is deleted after the job is processed. If you specify the /NODELETE qualifier, the file is saved in the user's default directory under the default name INPBATCH.COM. If you specify the /NAME qualifier, the file name of the batch input file is the same as the job name you supply with the /NAME qualifier.

/HOLD

/NOHOLD (default)

Controls whether or not the job is to be made available for immediate processing.

If you specify the /HOLD qualifier, the job is not released for processing until you specifically release it with the /NOHOLD or the /RELEASE qualifier of the SET QUEUE/ENTRY command.

/KEEP

/NOKEEP (default)

Controls whether the log file is deleted after it is printed. The /NOKEEP qualifier is the default unless you specify the /NOPRINTER qualifier.

/LOG_FILE=filespec

/NOLOG_FILE

Controls whether a log file with the specified name is created for the job or whether a log file is created.

When you use the /LOG_FILE qualifier, the system writes the log file to the file you specify. If you use the /NOLOG_FILE qualifier, no log file is created. If you specify neither form of the qualifier, the log file is written to a file in your default directory that has the same file name as the first command file in the job and a file type of LOG. Using neither the /LOG_FILE nor the /NOLOG_FILE qualifier is the default.

You can use the /LOG_FILE qualifier to specify that the log file be written to a different device. Logical names that occur in the file specification are translated at the time the job is submitted. The process executing the batch job must have access to the device on which the log file will reside.

If you omit the /LOG_FILE qualifier and specify the /NAME qualifier, the log file is written to a file having the same file name as that specified by the /NAME qualifier and the file type LOG.

/NAME=job-name

Specifies a string to be used as the job name and as the file name for both the batch job log file and the command file. The job name must be 1 to 39 alphanumeric characters and must be a valid file name. The default log file name is INPBATCH.LOG; the default command file name is INPBATCH.COM.

/NOTIFY

/NONOTIFY (default)

Controls whether a message is broadcast to any terminal at which you are logged in, notifying you when your job completes or aborts.

/PARAMETERS=(parameter[,...])

Specifies 1 to 8 optional parameters that can be passed to the command procedure. The parameters define values to be equated to the symbols P1 to P8 in the batch job. The symbols are local to the specified command procedure.

If you specify only one parameter, you can omit the parentheses.

The commas (,) delimit individual parameters. If the parameter contains any spaces, special characters or delimiters, or lowercase characters, enclose it in quotation marks (" "). Individual parameters cannot exceed 255 characters.

/PRINTER=queue-name

/NOPRINTER

Controls whether the job log file is queued to the specified queue for printing when the job is complete. The default print queue for the log file is SYS$PRINT.

If you specify the /NOPRINTER qualifier, the /KEEP qualifier is assumed.

/PRIORITY=n

Requires OPER (operator) or ALTPRI (alter priority) privilege to raise the priority above the value of the system parameter MAXQUEPRI.

Specifies the job scheduling priority for the specified job. The value of n is an integer from 0 to 255, where 0 is the lowest priority and 255 is the highest.

The default value for the /PRIORITY qualifier is the value of the system parameter DEFQUEPRI. No privilege is needed to set the priority lower than the MAXQUEPRI value.

The /PRIORITY qualifier has no effect on the process priority. The queue establishes the process priority.

/QUEUE=queue-name[:]

Specifies the name of the batch queue in which the job is to be entered. If you do not specify the /QUEUE qualifier, the job is placed in the default system batch job queue, SYS$BATCH.

/RESTART

/NORESTART (default)

Specifies whether the job restarts after a system failure or a STOP/QUEUE/REQUEUE command.

/TRAILING_BLANKS (default)

/NOTRAILING_BLANKS

Controls whether input cards in the card deck are read in card image form or input records are truncated at the last nonblank character. By default, the system does not remove trailing blanks from records read through the card reader. Use the /NOTRAILING_BLANKS qualifier to request that input records be truncated.

/WSDEFAULT=n

Defines a working set default for the batch job; the /WSDEFAULT qualifier overrides the working set size specified in the user authorization file (UAF).

Specify the value of n as a number of 512-byte pagelets on Alpha or 512-byte pages on VAX. Note that OpenVMS rounds this value up to the nearest CPU-specific page so that actual amount of physical memory allowed may be larger than the specified amount on Alpha. For further information, refer to the OpenVMS System Manager's Manual. The value n can be any integer from 1 to 65,535, 0, or the keyword NONE.

Use this qualifier to impose a value lower than the base queue value established by the system manager or lower than the value authorized in your UAF. A value of 0 or the keyword NONE sets the default value to the value specified either in your UAF or by the working set quota established for the queue. You cannot request a value higher than your default.

/WSEXTENT=n

Defines a working set extent for the batch job; the /WSEXTENT qualifier overrides the working set extent in the UAF.

Specify the value of n as a number of 512-byte pagelets on Alpha or 512-byte pages on VAX. Note that OpenVMS rounds this value up to the nearest CPU-specific page so that actual amount of physical memory allowed may be larger than the specified amount on Alpha. For further information, refer to the OpenVMS System Manager's Manual. The value n can be any integer from 1 to 65,535, 0, or the keyword NONE.

To impose a lower value, use this qualifier to override the base queue value established by the system manager rather than the value authorized in your UAF. A value of 0 or the keyword NONE sets the default value either to the value specified in the UAF or working set extent established for the queue. You cannot request a value higher than your default.

/WSQUOTA=n

Defines the maximum working set size (working set quota) for the batch job; the /WSQUOTA qualifier overrides the value in the UAF.

Specify the value of n as a number of 512-byte pagelets on Alpha or 512-byte pages on VAX. Note that OpenVMS rounds this value up to the nearest CPU-specific page so that actual amount of physical memory allowed may be larger than the specified amount on Alpha. For further information, refer to the OpenVMS System Manager's Manual. The value n can be any integer from 1 to 65,535, 0, or the keyword NONE.

Use this qualifier to impose a value lower than the base queue value established by the system manager or lower than the value authorized in your UAF. Specify 0 or NONE if you want the working set quota defaulted to either your UAF value or the working set quota specified on the queue. You cannot request a value higher than your default.


Examples

#1

      


The JOB and PASSWORD cards identify and authorize the user HIGGINS to enter batch jobs. The command stream consists of a FORTRAN command and FORTRAN source statements to be compiled. The file name AVERAGE following the device name SYS$INPUT provides the compiler with a file name for the object and listing files. The output files are cataloged in user HIGGINS's default directory.

If the compilation is successful, the LINK command creates an executable image and the RUN command executes it. Input for the program follows the RUN command in the command stream. The last command in the job prints the program listing. The last card in the deck contains the EOJ (end of job) command.

#2

      


The /NAME qualifier on the JOB card specifies a name for the batch job. When the job completes, the printed log file is identified as BATCH1.LOG. The JOB command is continued onto a second card with the continuation character (-). The /PARAMETERS qualifier defines P1 as A and P2 as TEST. The last card in the deck contains the EOJ (end of job) command.


Previous Next Contents Index

  [Go to the documentation home page] [How to order documentation] [Help on this site] [How to contact us]  
  privacy and legal statement  
9996PRO_025.HTML