OpenCms Documentation/Extending OpenCms/Development setups

(Difference between revisions)
Jump to: navigation, search
(Draft an extended documentation of the build script)
 
(Extend documentation)
Line 8: Line 8:
 
.  
 
.  
 
+--- BuildCms/ (build target dir)
 
+--- BuildCms/ (build target dir)
 +
|    \--- 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)
 
+--- 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
 
+--- version.properties  (external version properties file)
 
+--- version.properties  (external version properties file)
 
</pre>
 
</pre>
Line 18: Line 24:
 
<pre>
 
<pre>
 
version.properties
 
version.properties
+--- version.number (version information)
+
\--- 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)
 +
 
 
</pre>
 
</pre>
  
Line 25: Line 47:
  
 
<pre>
 
<pre>
additional_repositories (semicolon-separated list of maven repositories)
+
additional_repositories (semicolon-separated list the urls of maven repositories)
max_heap_size: 1024m (The maximum heap size for the tasks workplaceTheme, gwt_* and test*)
+
max_heap_size: 1024m (maximum heap size for the tasks workplaceTheme, gwt_* and test*)
external_directories
+
external_directories (path to an additional gradle project with OpenCms modules)
 
</pre>
 
</pre>

Revision as of 09:13, 14 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:

. 
+--- BuildCms/ (build target dir)
|    \--- 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
+--- 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)


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)
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox