applicationBuild

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
    • 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.