FlexDeploy - Oracle JDeveloper Plugin Guide
The Oracle JDeveloper plugin executes deployment profiles using the ojdeploy command to compile/ build Application or Project artifacts. For example, you can build
- EAR or WAR files for deployment to an Application Server
- ADF Library JAR files for use with JDeveloper applications as dependencies.
- MAR files for ADF customizations.
You need to install a specific version of JDeveloper with the necessary extensions (available from Help - Check for Updates... menu) on endpoint(s) where this plugin would execute. You can choose a separate Virtual Machine with just JDeveloper installed on it for this build operation. Build operation can be CPU intensive, hence it is recommended to use separate low cost hardware.
You should checkout or export code for entire JDeveloper application from SCM prior to running this operation. Checkout or Export can be easily done if you configure project with Source details.
It is good practice to create FlexDeploy project with name that matches JDeveloper application name.
Supported Versions
- 11.1.1.3+
- 12c
Key Features
- Build Java Enterprise Archive (EAR), Web Archive (WAR) and Metadata Archive (MAR) files for JDeveloper applications.
- Build Java archive (JAR) files for JDeveloper project(s).
- Build ADF Library JAR files for JDeveloper project(s).
- Executes against source exported from an SCM (e.g. SVN or Git Plugin).
Plugin Operations
Appendix
- The JDeveloper 11g download page does not have specific installer for 64bit Linux or Windows. It is advisable to use Generic Installer if you are setting up a 64 bit Windows or Linux environment.
- For JDeveloper 12c, you can use 64 bit Windows installer or choose to use Generic Installer.
- In a nutshell, if the download is not very clear, Generic Installer is your best choice.
- When using Generic Installer, make sure to use proper JDK (32 bit or 64 bit depending on operating system and specific Java version either JDK 1.6 or JDK 1.7). You will launch generic installer using
{
path to java
}
-jar
{
installer jar file
}
. The version of Java used to launch the installer will be used when you launch JDeveloper or run Plugin operations.- JDK to use for specific version of JDeveloper
- JDeveloper 11g – JDK 1.6.x
- JDeveloper 12c – JDK 1.7.x
- It is very critical to select the proper JDK version, as generated applications will most likely be deployed to WebLogic, and WebLogic also runs with specific version of JDK. You do not have to be very specific with patch numbers, just make sure the major and minor version of JDK matches with the target runtime environment.
- JDK to use for specific version of JDeveloper
- Install JDeveloper in version specific folder, as you will most likely have more than one version to support. For example,
/oracle/middleware/product/jdev11117, /oracle/middleware/product/jdev121300,
etc. - If you are building WebCenter applications, you must install various JDeveloper extensions necessary to compile WebCenter applications.
- You must do the same for other extensions including any custom extensions that you may have on Developer workstations. For example, the JUnit extension.
- As JDeveloper on remote host is being used to perform builds, developers must make sure to not reference JAR files using absolute path. If there is need to use third-party or open source JAR files, you can reference them by creating a Project-scoped JDeveloper library.
JDeveloper through Docker (Coming with FlexDeploy 5.0)
In addition to the traditional JDeveloper plugin, we also offer a Docker image capable of building projects and applications through JDeveloper.
How to get it
Registry: docker.io
Image: flexdeploy/plugin-jdeveloper
How to use it
Drag a 'dockerRunContainer' operation into your workflow and configure the 'Entrypoint Commands' input according to the following:
Parameters:
Name | Description | Comments |
---|---|---|
operation | buildProject or buildApplication | This must be the first parameter |
workspace | Workspace to build from. Should point to a .jws file. | Passed with the -w option |
profile | Build profile to run | |
project | Project name within a workspace to build. | Only needed if building a project |
Example:
"buildProject,-w,/var/volumes/tmp/workspace.jws,-n,testProject,-p,profile1"
In the workflow above I have the entrypoint commands hard-coded for readability sake.
For more information on the docker plugin and its inputs check out the FlexDeploy Docker Plugin page!
- style