app-component.xml
file is required for using the current application as a component of another application. The file defines the dependencies on other components, describes the existing application modules, generated artifacts and exposed application properties.
The app-component.xml
file should be located in a package, specified in the App-Component-Id
entry of the global module JAR manifest. This manifest entry allows the build system to find components for a project in the build class path. As a result, in order to use some component in your project, just define the component’s global artifact coordinates in the dependencies/appComponent
items of your build.gradle.
By convention, the app-component.xml
is located in the root package of the project (defined in metadata.xml) which is also equal to the projects’s artifact group (defined in build.gradle):
App-Component-Id == root-package == cuba.artifact.group == e.g. 'com.company.sample'
Use CUBA Studio to generate the app-component.xml
descriptor and the manifest entries for the current project automatically.
- Using 3rd party dependencies as appJars:
-
If you want the component’s 3rd party dependencies to be deployed with your application module’s artifacts (e.g.
app-comp-core
orapp-comp-web
) into thetomcat/webapps/app[-core]/WEB-INF/lib/
folder, you should add these dependencies as appJar libraries:link:../../../source/config_files/appJar.xml[role=include]
TipIf you don’t want to use a project as an app component, you should add such dependencies as appJars to the deploy task of your
build.gradle
:link:../../../source/config_files/appJar.groovy[role=include]