OpenCms Documentation/Extending OpenCms/Development setups
(Difference between revisions)
(Extend documentation) |
m (Extend documentation: module.properties) |
||
Line 12: | Line 12: | ||
| | OpenCms looks for this directory based on the property value of external_directories.) | | | OpenCms looks for this directory based on the property value of external_directories.) | ||
| +--- modules/all-modules.properties (list of all external modules) | | +--- modules/all-modules.properties (list of all external modules) | ||
− | | | + | | +--- all-modules.properties (list of all external modules if modules/all-modules.properties not available) |
+--- opencms-core/ (opencms-core sources) | +--- opencms-core/ (opencms-core sources) | ||
| +--- src/org/opencms/main/version.properties (internal version properties file) | | +--- src/org/opencms/main/version.properties (internal version properties file) | ||
| \--- modules/all-modules.properties | | \--- modules/all-modules.properties | ||
+ | | \--- $moduleName/ | ||
+ | | +--- module.properties | ||
+ | | +--- META-INF/services/ | ||
+ | | +--- resources | ||
+ | | \--- static | ||
+--- version.properties (external version properties file) | +--- version.properties (external version properties file) | ||
Line 39: | Line 44: | ||
opencms-core/webapp/WEB-INF/classes/log4j.properties (default logging settings) | opencms-core/webapp/WEB-INF/classes/log4j.properties (default logging settings) | ||
− | + | opencms-core/modules/$moduleName/module.properties (compile settings for module $moduleName) | |
+ | +--- module.packages (comma separated list of packages to include in the compilation) | ||
+ | \--- module.gwt [optional] (name of the gwt module, if any) | ||
The gradle build scripts supports the following properties (defaults are shown, if defined): | The gradle build scripts supports the following properties (defaults are shown, if defined): |
Revision as of 15:19, 20 June 2017
Developing the OpenCms core
(This is an extension to the official documentation page)
With the default configuration, the gradle build script assumes the following directory hierarchy:
work/ +--- BuildCms/ (build target dir) | +--- classes (contains the compiled OpenCms classes) | \--- modulesZip (contains all modules distribution zips) +--- extra-modules (sources of additional opencms modules, e.g. Alkacon's modules-v8. The name of this directory is not fixed. | | OpenCms looks for this directory based on the property value of external_directories.) | +--- modules/all-modules.properties (list of all external modules) | +--- all-modules.properties (list of all external modules if modules/all-modules.properties not available) +--- opencms-core/ (opencms-core sources) | +--- src/org/opencms/main/version.properties (internal version properties file) | \--- modules/all-modules.properties | \--- $moduleName/ | +--- module.properties | +--- META-INF/services/ | +--- resources | \--- static +--- version.properties (external version properties file)
The gradle build script accesses the following configuration files (some relevant properties are shown):
version.properties \--- version.number (version information) opencms-core/modules/all-modules.properties \--- modules.common.all (list of all module names) extra-modules/modules/all-modules.properties \--- modules.common.all (list of all additional module names) extra-modules/all-modules.properties (if extra-modules/modules/all-modules.properties not available) \--- modules.common.all (list of all additional module names) opencms-core/src-gwt/org/opencms/GwtBaseCommon.gwt.xml (tune to skip unnecessary builds) +--- locale \--- use.agent opencms-core/webapp/WEB-INF/classes/log4j.properties (default logging settings)
opencms-core/modules/$moduleName/module.properties (compile settings for module $moduleName) +--- module.packages (comma separated list of packages to include in the compilation) \--- module.gwt [optional] (name of the gwt module, if any)
The gradle build scripts supports the following properties (defaults are shown, if defined):
additional_repositories (semicolon-separated list the urls of maven repositories) max_heap_size: 1024m (maximum heap size for the tasks workplaceTheme, gwt_* and test*) external_directories (path to an additional gradle project with OpenCms modules) tomcat_update_target (path to the lib dir of the deployed opencms webapp, e.g. /var/lib/tomcat/webapps/opencms/WEB-INF/lib)
Note.- Inside the gradle script, properties can be defined using the ext prefix. E.g.:
project.ext.max_heap_size='1024m'