Builds EAR file from JDeveloper application using the application deployment profile. This operation can also be used to build MAR file, which is useful for WebCenter Portal customization application. You must create Application Profile for JDeveloper application for use by this operation. Create deployment profile on your application as necessary, commit changes to SCM and run applicationBuild plugin operation to execute deployment profile.
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.
Environment/Instance Properties
Property Name | Property Code | Required | Description |
---|---|---|---|
JDeveloper Install Home | FDJDEV_INSTALL_HOME | Yes | The JDeveloper installation directory. You can control Build instance associated with your project, which effectively controls which version of JDeveloper is used for build operations. |
Project Properties
Property Name | Property Code | Required | Description |
---|---|---|---|
Inputs
Input Name | Input Code | Required | Description |
---|---|---|---|
Application(JDev) Source Folder | FDJDEV_INP_APP_SOURCE_FOLDER | No | The folder where source is checked out. Leave it blank if you did not use any sub-folder to checkout/export source. If you have only one JDeveloper Application in export or check out then leave this blank, and plugin will find .jws file automatically. If you are using SubVersion and Source is defined on Project configuration, you can use FDBLD_SVN_SOURCE1_CHECKOUT_FOLDER variable. |
Application Deployment Profile | FDJDEV_INP_APP_DEPLOY_PROFILE | No | The application deployment profile name. Default is the name of the JDeveloper JWS file in exported or checked out source. So if you keep application profile name same as JDeveloper application name then you can skip this input. |
Application Artifacts Folder | FDJDEV_INP_APP_ARTIFACT_FOLDER | No | Folder name relative to the application where the EAR file will be generated. Default is the deploy folder, if you do not supply any value here. This is default when you create new Application deployment profile as well. |
Synchronize JDBC Resources | FDJDEV_INP_APP_SYNC_JDBC_RESOURCES | No | Indicate if the EAR file should have generated WebLogic JDBC xml files. Default would be false, so by default EAR file will not have any WebLogic JDBC xml files, which allows easy deployment to remote WebLogic server, but you will have to manage the Data Source using WLST or the Administrative console. You can also use the FlexDeploy WebLogic Plugin to manage data sources in automated manner. |
Override File Pattern(s) | FDJDEV_INP_OVERRIDE_FILE_PATTERN | No | Specify {FileName}={OverrideFileName} pattern. Matching files will be replaced by override files and Property replacement logic will be executed as well. For example, web.xml=fd-web.xml, where web.xml file will be replaced with content from fd-web.xml file and Property Replacement logic will perform property replacement as well. See Property Replacement Support |
Save Artifacts with Extension(s) | FDJDEV_INP_SAVE_ARTIFACTS_EXTENSIONS | No | Specify comma-separated extensions to be copied to artifacts after build (select one more from drop down). For example ear, mar etc. (Defaults to ear). You can use mar to capture metadata archive files. |
Outputs
Output Name | Required | Description |
---|---|---|
Artifacts
This operation at the least produces an EAR file as artifact. Alternatively, other files like MAR or WAR can also be generated as artifacts. The generated artifact file(s) are automatically copied to artifacts folder and subsequently uploaded to artifact repository.
Endpoint Selection
This operation will select all available endpoints associated to the environment instance.
You must create an instance for JDeveloper and associate the endpoints where you have JDeveloper installed. You can create more than one instance if you are supporting multiple JDeveloper versions in your environment. For example, JDeveloper 11.1.1.8, JDeveloper 12.1.3 etc. Projects can select a specific JDeveloper instance on the Project Configuration Screen as per what version of JDeveloper each project is using for development.
Endpoint Execution
This operation will randomly execute on one of the endpoints identified during selection.
Special Considerations
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 / 1.8.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.
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.