You are currently viewing How to Use Adcgnjar Utility in Oracle EBS

How to Use Adcgnjar Utility in Oracle EBS

In this Post

We’ll be exploring how to use adcgnjar utility in detail step by step. Let’s explore…

adcgnjar

In Oracle EBS 12.2 a structured way to handle custom Java deployment has been introduced, adcgnjar is one of the key utilities in that flow of custom development.

If you work with OAF (Oracle Application Framework) customizations java classes placed under $JAVA_TOP this utility is used to pack and and sign them into customall.jar so the application tier can load them correctly without any issues.

adcgnjar is not just a jar-creation script. It is also part of the EBS maintenance model that keeps custom Java code aligned with the EBS architecture and makes deployments more convenient after patching or upgrades.

adcgnjar in action

There are series of steps that are to be followed when running the adcgnjar utility and the changes to take effect in the EBS system.

Login to EBS Server

Login into EBS instance as application OS user (applmgr) and source to “Run Edition”.

su – applmgr

cd /app/DEMO

ls -lrt

. EBSApps.env run

#cd /app/DEMO/
#ls -lrt
total 16
drwxr-xr-x    5 applmgr  oinstall        256 Jan 23 23:19 fs1
drwxr-xr-x    5 applmgr  oinstall        256 Jan 23 23:19 fs2
drwxr-xr-x    4 applmgr  oinstall        256 Jan 24 00:49 fs_ne
-rw-r--r--    1 applmgr  oinstall       6465 Jan 29 17:29 EBSapps.env
#. EBSapps.env run

  E-Business Suite Environment Information
  ----------------------------------------
  RUN File System           : /app/DEMO/fs1/EBSapps/appl
  PATCH File System         : /app/DEMO/fs2/EBSapps/appl
  Non-Editioned File System : /app/DEMO/fs_ne


  DB Host: appsrv.demo.com  Service/SID: DEMO


  Sourcing the RUN File System ...

#

Navigate to $JAVA_TOP

cd $JAVA_TOP

ls -lrt

#cd $JAVA_TOP
# ls -lrt
total 48
drwxr-xr-x    3 applmgr  oinstall        256 Jan 04 2013  policies
drwxr-xr-x    2 applmgr  oinstall        256 Feb 07 20:52 META-INF
drwxr-xr-x    4 applmgr  oinstall        256 Mar 06 00:23 oracle
drwxr-xr-x    3 applmgr  oinstall        256 Mar 14 15:19 xxcust
-rw-r--r--    1 applmgr  oinstall       9699 Mar 14 15:23 customall.jar
#

Perform Backup

Perform backup of existing customall.jar file in case of any issues with the new deployment old file can be replaced.

cp customall.jar customall.jar_10JUL26

ls -lrt

#cp -rp customall.jar customall.jar_10JUL26
# ls -lrt
total 48
drwxr-xr-x    3 applmgr  oinstall        256 Jan 04 2013  policies
drwxr-xr-x    2 applmgr  oinstall        256 Feb 07 20:52 META-INF
drwxr-xr-x    4 applmgr  oinstall        256 Mar 06 00:23 oracle
drwxr-xr-x    3 applmgr  oinstall        256 Mar 14 15:19 xxcust
-rw-r--r--    1 applmgr  oinstall       9699 Mar 14 15:23 customall.jar
-rw-r--r--    1 applmgr  oinstall       9699 Jul 10 20:43 customall.jar_10JUL26
#

Identify adcgnjar

Run the below command to identify the adcgnjar location.

which adcgnjar

#which adcgnjar
/app/DEMO/fs1/EBSapps/appl/ad/12.0.0/bin/adcgnjar
#

Run adcgnjar

Run adcgnjar command to regenerate the customall.jar file.

adcgnjar

Note: This will request for apps username and apps password, enter to proceed

#adcgnjar

                     Copyright (c) 2002, 2012 Oracle Corporation
                        Redwood Shores, California, USA

                            AD Custom Jar Generation

                                 Version 12.2.0

NOTE: You may not use this utility for custom development
      unless you have written permission from Oracle Corporation.

Enter the APPS username: apps

Enter the APPS password:

Generating customall.jar ...

                     Copyright (c) 2002, 2012 Oracle Corporation
                        Redwood Shores, California, USA

                                    AD Java

                                 Version 12.2.0

NOTE: You may not use this utility for custom development
      unless you have written permission from Oracle Corporation.

Reading product information from file...

Reading language and territory information from file...

Reading language information from applUS.txt ...
  Temporarily resetting CLASSPATH to:
  "/app/DEMO/fs1/EBSapps/appl/ad/12.0.0/java/adjava.zip:/app/DEMO/fs1/EBSapps/comn/util/jdk32/lib/dt.jar:/app/DEMO/fs1/EBSapps/comn/util/jdk32/lib/tools.jar:/app/DEMO/fs1/EBSapps/comn/util/jdk32/jre/lib/rt.jar:/app/DEMO/fs1/EBSapps/comn/shared-libs/ebs-3rdparty/WEB-INF/lib/ebs3rdpartyManifest.jar:/app/DEMO/fs1/FMW_Home/Oracle_EBS-app1/shared-libs/ebs-fmw/WEB-INF/lib/ebsFMWManifest.jar:/app/DEMO/fs1/FMW_Home/Oracle_EBS-app1/shared-libs/ebs-appsborg/WEB-INF/lib/ebsAppsborgManifest.jar:/app/DEMO/fs1/FMW_Home/oracle_common/modules/oracle.uix_11.1.1/uix2.jar:/app/DEMO/fs1/EBSapps/comn/java/classes:/app/DEMO/fs1/EBSapps/10.1.2/forms/java:/app/DEMO/fs1/EBSapps/10.1.2/forms/java/frmall.jar:/app/DEMO/fs1/EBSapps/10.1.2/jlib/ewt3.jar:/app/DEMO/fs1/EBSapps/10.1.2/j2ee/OC4J_BI_Forms/applications/formsapp/formsweb/WEB-INF/lib/frmsrv.jar"

  Calling /app/DEMO/fs1/EBSapps/comn/util/jdk32/jre/bin/java ...
The JDK version is 1.7.0_451

Validating the files/directories specified for -areas option


About to Analyze the input areas : Fri Jul 10 2026 20:54:13

WARNING: Unable to load metadata entry from zip file /app/DEMO/fs1/EBSapps/comn/java/classes/customall.zip
Cause: Error while trying to read metadata from file /app/DEMO/fs1/EBSapps/comn/java/classes/customall.zip: No metadata entry META-INF/JRIMETA.DAT found
Action needed: None. This message is for information only and can safely be ignored.



Done Analyzing the input areas : Fri Jul 10 2026 20:54:13


About to Generate outputFile : Fri Jul 10 2026 20:54:13


    About to Generate customall.jar : Fri Jul 10 2026 20:54:13


    Done Generating customall.jar : Fri Jul 10 2026 20:54:13


    About to Sign customall.jar : Fri Jul 10 2026 20:54:13


    Done Signing customall.jar : Fri Jul 10 2026 20:54:14


Done Generating outputFile : Fri Jul 10 2026 20:54:14


customall.jar generated successfully.

#

Verify the new customall.jar details

ls -lrt

# ls -lrt
total 48
drwxr-xr-x    3 applmgr  oinstall        256 Jan 04 2013  policies
drwxr-xr-x    2 applmgr  oinstall        256 Feb 07 20:52 META-INF
drwxr-xr-x    4 applmgr  oinstall        256 Mar 06 00:23 oracle
drwxr-xr-x    3 applmgr  oinstall        256 Mar 14 15:19 xxcust
-rw-r--r--    1 applmgr  oinstall       9699 Jul 10 20:43 customall.jar_10JUL26
-rw-r--r--    1 applmgr  oinstall       9699 Jul 10 20:54 customall.jar
#

Bounce Oacore Managed Server

For the new changes to take effect in the EBS application level, oacore managed server has to be stopped and started.

Note: This is a downtime activity, request approval and plan during the scheduled maintenance window.

Follow the below steps:

cd $ADMIN_SCRIPTS_HOME
ls -lrt
ps -ef | grep oacore
sh admanagedsrvctl.sh stop oacore_server1
sh admanagedsrvctl.sh status oacore_server1
sh admanagedsrvctl.sh start oacore_server1
ps -ef | grep oacore

Automating the Activity

Automating adcgnjar command and oacore managed server bounce can be performed to avoid manual intervention.

Place passwords in file “setpwd”

vi setpwd
--Add the below lines and save--
export appspwd=apps
export weblogicpwd=weblogic
:wq!

Automating adcgnjar using adcgnjar_custom.sh

vi adcgnjar_custom.sh
--Add the below lines and save--
. setpwd
{ sleep 1s; echo apps; sleep 1s; echo $appspwd;} | adcgnjar
:wq!

Automating oacore managed services bounce using oacore_bounce.sh

vi oacore_bounce.sh
--Add the below lines and save--
. setpwd
{ sleep 1s; echo $weblogicpwd;} | $ADMIN_SCRIPTS_HOME/admanagedsrvctl.sh stop oacore_server1
$ADMIN_SCRIPTS_HOME/adapcctl.sh stop
$ADMIN_SCRIPTS_HOME/adapcctl.sh start
{ sleep 1s; echo $weblogicpwd;} | $ADMIN_SCRIPTS_HOME/admanagedsrvctl.sh start oacore_server1
:wq!

Script Execution

To generate the adcgnjar file – Run “adcgnjar_custom.sh”

To bounce the oacore managed services – Run “oacore_bounce.sh”

sh adcgnjar_custom.sh
sh oacore_bounce.sh

End of Post

Thanks for taking the time to read this post.
Stay tuned for the next post coming soon. . .