support: Customer Portal
Focused on delivering choice, investment protection and flexibility to organizations with valuable COBOL assets

Veryant Knowledge Base
Home > All Categories > isCOBOL General > How can I package my application and execute it in a JAR file?
Question Title How can I package my application and execute it in a JAR file?

How do I package my application with resources in a JAR file?
How do I run a program that is in a JAR file?
How can I create an executable JAR file so that the user can just double-click on it?


The Java Archive Utility, JAR for short, is what you use to combine multiple files into a single file in order to simplify distribution and deployment. It replaces the functionality you used to get with Acucorp’s cblutil. 

You can also use jar as another solution for helping your application to find resource files such as bitmap images. 

For example, suppose you had the following file structure:
and you wanted to package it all into a single file. If your W$BITMAP loads “image1.bmp” then you could put PROG1.class and image1.bmp into a JAR file with:

jar cfv myprog.jar -C Myproject\object PROG1.class -C Myproject\resource image1.bmp 


jar cfv myprog.jar -C Myproject\object . -C Myproject\resource . 

The dots tell JAR to include all files in the directories. 

Then you would execute the program on Windows with:

java -cp “myprog.jar;c:\program files\veryant\iscobol2007\lib\iscobol.jar” PROG1 


set CLASSPATH=”myprog.jar;c:\program files\veryant\iscobol2007\lib\iscobol.jar” isrun PROG1 

When you are ready to package your application for distribution you can combine all necessary class files and resources into one JAR file and create what is known as an executable Jar. Then double clicking on the .jar file will execute your application. Or you can execute it with simply “java -jar executable.jar”

To do this you create a manifest file. For example, in the above example, create a file named MANIFEST.MF with the following contents:
Main-Class: PROG1
Class-Path: isrun.jar
The last line of the file should be a blank line.

Create the executable JAR file with the following command line:

jar cmfv MANIFEST.MF myprog.jar -C Myproject\object . -C Myproject\resource . 

At run time make sure that isrun.jar is in the same directory as myprog.jar. Then you may execute your program by double-clicking on it (if your desktop file association is set correctly) or with the following command:

java -jar myprog.jar 

If desired, you can put isrun.jar and other isCOBOL JAR files that your application uses in a subdirectory. For example if your application needs both isrun.jar and coblib.jar then you could put those in a subdirectory named iscobollib. Then you add this subdirectory name to the JAR files in the MANIFEST.MF Class-Path. For example, with the following installation file structure:
You would create the following MANIFEST.MF file:
Main-Class: PROG1
Class-Path: iscobollib/isrun.jar iscobollib/coblib.jar
(separate URLs in Class-Path with spaces and end the file with a blank line)
Authored by: Veryant Support This question has been viewed 9098 times so far.
Click Here to View all the questions in isCOBOL General category.
File Attachments File Attachments
There are no attachment file(s) related to this question.
How helpful was this article to you?
User Comments User Comments Add Comment
There are no user comments for this question. Be the first to post a comment. Click Here
Related Questions Related Questions
  1. How do I compile for compatibility with older versions of Java?
  2. When can I get the " Permission denied:connect" message? And how can it be avoided?
  3. How do I migrate indexed files to a format that is supported by isCOBOL?
  4. How do I resolve "code too large for try statement" errors?
  5. How do I prevent hackers from decompiling Java class files to reverse engineer my COBOL application?
  6. What Micro Focus library routines are supported?
  7. How can I read an Excel spreadsheet from COBOL?
  8. Does SET ADDRESS OF X TO Y work?
  9. Do I need to worry about the compile warning "Note: uses unchecked or unsafe operations?"
  10. How do I create a desktop shortcut icon to launch my program?
  11. How do I resolve a compile error on PIC X(2) USAGE COMP-5?
  12. What tools are available for automated functional (regression) testing of a COBOL application?
  13. Is there currently a way to debug COBOL and Java source together?
  14. Where can I obtain a copy of the ANSI 2002 COBOL standard?
  15. How do I set up isCOBOL to access Vision files?
  16. How do I increase the maximum Java heap size when compiling?
  17. How do I determine what properties are set?
  18. Should I use JISAM or isCOBOL ISAM Server (c-treeACE)?
  19. How do I turn on debug trace to produce a log file?
  20. How would I create my own CBL_ALLOC_MEM and CBL_FREE_MEM routines?
  21. What is the best way to control Microsoft Word?
  22. Why do I get a compile error "--S: Invalid open mode" on an OPEN I-O of an ORGANIZATION LINE SEQUENTIAL file?
  23. What is the recommended method for specifying isCOBOL framework properties?
  24. How can I use the F10 key in my application without it changing the keyboard focus?
  25. Where can I find more information on A$ENCRYPT and A$DECRYPT?
  26. How do I get my screens to be the same size and spacing as when I run with ACUCOBOL?
  27. How do I change the icon in the upper left corner of the Window?
  28. Does isCOBOL work with Flexus COBOL sp2?
  29. How do I use conditional compilation?
  30. What is the behavior difference of STOP THREAD?
  31. How do I specify properties or a properties file on the command line?
  32. What are the defaults for the DATE-ENTRY control DISPLAY-FORMAT property and format styles?
  33. How does a program detect at runtime whether it is running standalone GUI, thin client or with Web Direct 2.0?
  34. How do I select 11x17 paper size using WIN$PRINTER?
  35. How would I create my own CBL_CHECK_FILE_EXIST routine?
  36. Does isCOBOL run on Linux on System z?
  37. What are the key technical advantages of isCOBOL?
  38. Sending SMTP mail
  39. Why do I get the error message "Native call not found" and how do I fix the problem?
  40. Where can I learn more about Classpath, the Java class loader, JDK tools and utilities?
  41. Can Veryant recommend a good Web site to find 3rd party JavaBeans?
  42. Is the isCOBOL 2009 SP1 release intended to deploy mainframe applications over the cloud? Or is it an integration mechanism for bringing in cloud data and apps?
  43. How do I compile fixed (ANSI) format source that COPYs terminal format source or vice versa?
  44. Why do I get the error java.lang.NoClassDefFoundError: com/iscobol/rts_n/StopRunException?
  45. What algorithm does isCOBOL use to load framework properties (runtime config variables)?
  46. What compile option should I use for ICOBOL compatibility?
  47. Can I use directory paths in CALL names?
  48. How can I make my isCOBOL program to be called instead of a C routine when both have the same name?
  49. Can isCOBOL access a DLL or .so that is in a JAR file?
  50. Is there any equivalent to COPY RESOURCE?
  51. Is your runtime library backward compatible?
  52. How do I set iscobol.file.index.FileName with variable file name assignments?
  53. How do I specify which file status codes I want to use?
  54. How do I write my own replacement for a C$ library routine?
  55. How do I configure file locations with environment variables?
  56. Does isCOBOL APS run on z/OS?
  57. How do I print to a spooler in Unix?
  58. What is the easiest and/or best way to convert a legacy text-based user interface to a web front end?
  59. Does isCOBOL support C$REDIRECT?
  60. Is isCOBOL backward compatible?
  61. What should I use for USAGE HANDLE items instead of NULL?
  62. How can I tell what changes were made in the isCOBOL latest update?
  63. Can you derive isCOBOL object classes from Java and vice versa?
  64. I've heard there is a problem passing pointers to C functions. What is it?
  65. Is there any way to use isCOBOL with SCO 5.0.6 (JDK 1.3)?
  66. Can the file system (iscobol.file.index) be set programmatically?
  67. Is there a way to have single set of source code that will compile with both ACUCOBOL and isCOBOL?
  68. How do I get more information when I get java.lang.reflect.InvocationTargetException?
  69. What is the best way to profile an isCOBOL program?
  70. Does isCOBOL support Crystal Reports or other Report Writers?
  71. How do I suppress multiple reserved words with the -rw compiler option?
  72. Why do I get the error message “java.lang.UnsatisfiedLinkError: no ### in java.library.path?
  73. How can I monitor a jvm started on a remote computer box?
  74. I still get the error : "Missing License: The license key is missing, invalid or has expired!" I can't figure out why
  75. How can I avoid the "java.lang.OutOfMemoryError: PermGen space" error?
  76. Why do I get the error message "java.lang.ArrayIndexOutOfBoundsException" ?
  77. How can I avoid, in execution, the "java.lang.OutOfMemoryError: Java heap space" error?
  78. Can I call an RMCobol program passing parameters to it?
  79. What does mean the error NO X11 DISPLAY?
  80. Why do I get the error message "java.lang.NullPointerException" ?
  81. How do I resolve the error "java.lang.NoClassDefFoundError" or "java.lang.ClassNotFoundException"?
  82. Why do I get the error "Could not load the main class" ?
  83. Is there any way to direct the output from the “Print Screen” keyboard key directly to a printer?
  84. Did you know how to write custom information inside isCOBOL log file?
  85. Did you know you could set properties to configure the PDF'S generation while printing?
  86. Did you know you can encrypt the communication with the isCOBOL Server?
  87. Did you know that in a string you can replace a text with a new one with a different length by using the C$REPLACE_ALL routine?
  88. GIT Server (Linux) - Install and Configuration
  89. How to search by key with case insensitive on ISAM files
  90. Activating and Check the isCOBOL License
Article Information Additional Information
Article Number: 54
Created: 2009-08-31 5:54 PM
Rating: 1 Star
Article Options Article Options
Print Question Print this Question
Email Question Email Question to Friend
Export to Adobe PDF Export to PDF File
Export to MS Word Export to MS Word
Bookmark Article
Subscribe to Article Subscribe to Article
Search Knowledge Base Search Knowledge Base


© Veryant - All Rights Reserved
Veryant and isCOBOL are trademarks or registered marks of Veryant in the United States and other countries. All other marks are the property of their respective owners.