Related Documents
Document Properties
Kbid25E616
Last Modified03-Feb-2020
Added to KB12-Mar-2014
Public AccessEveryone
StatusOnline
Doc TypeReferences
Product
  • Gradle Tools
  • ICM 7.6
  • ICM 7.7
  • ICM 7.8
  • ICM 7.9
  • ICM 7.10

Reference - Gradle Build Tools

Table of Contents

Product Version

1.0

Product To Version

 

Status

final


1 Introduction

This document describes the Gradle DSL extension objects of Intershops Gradle build plugins, that are used to configure the build process of system components.

Deep Links and Gradle Versions

This document describes Intershop's Build Tools in different versions. Information that applies only to a certain version of the tools is clearly marked.

The document also contains deep links into the Gradle's documentation. For technical reasons they always point to Gradle version 1.8. For Build Tools version >= 2.0, please refer to the Gradle Build Language Reference and Javadoc for Gradle version 2.0 instead. Mostly it is enough to substitute the version number in the URL, e.g., change:

http://www.gradle.org/docs/1.8/dsl/org.gradle.api.Task.html

into

http://www.gradle.org/docs/2.0/dsl/org.gradle.api.Task.html

1.1 References

2 Extension Objects

Gradle itself as well as its plugins use extension objects to obtain configurations from build scripts. Besides the standard extension objects of Gradle the Intershop build tools add some Intershop specific extension objects, that are discussed in this section.

2.1 Extension Object intershop

This extension contains the configuration of how to package artifacts of a component and other special component configurations. It comes with the intershop-base plugin. All component specific plugins applies the intershop-base plugin.

intershop {
	displayName = 'Platform - Messaging Component'
	staticLibs = fileTree(dir: staticCartridgeLibFolder, include: '*.jar')
}

2.1.1 Methods

TypeMethodDescription
NamedDomainObjectContainer< ComponentPackage>packages(closure)package contains the configuration of component artifacts

2.1.2 Property Details

TypePropertyDescriptionDefault Value
StringdisplayNameDisplay name of a component. This is used in the ivy.xml that is stored on the repository and on the server installation.(null)
StringdescriptionDescription of a component. This is used in the ivy.xml that is stored on the repository and on the server installation.(null)
StringproductNameProduct name of all components. This is used for JavaDoc generation.Intershop
StringproductCopyrightOwner

Product copyright owner of all components . This is used for JavaDoc generation.

Intershop Communications
StringjavaSourceDir Name / path for the standard java source directory.javasource
StringstaticCartridgeFolderFolder with static content of component / cartridge.staticfiles/cartridge
StringstaticCartridgeLibFolderFolder with additional java libraries.staticfiles/cartridge/lib
FileCollectionstaticLibsAdditional java libraries of this project. These files are added to the compile classpath
and will be published with this component.
(empty collection)
String

staticLibsPublishInclude

Pattern for java libraries, which are included in publishing.**/**
StringstaticLibsPublishExcludePattern for java libraries, which are excluded from publishing(null)
booleancompilerWarningsEnabled Compiler options are added if this property is true.false

2.1.3 Type  ComponentPackage

A component package describes a package artifact that is part of a component and extends PatternSet. For more properties and methods see PatternSet.

intershop {
    packages {
        local { 
            srcDir fileTree(dir:'staticfiles/general', include: 'tools/**')
            srcDir(jar.outputs.files, {
						into 'tools/customer_tool'
						rename { String fileName ->
							fileName = 'customer_tool.jar'
						}
					})
        }
        share { }
    }
}

The following packages are preconfigured. If the package is added the preconfiguration is used.

PackageConfigurationDescription
localsrcDir 'staticfiles/general/root'files for the local installation
cartridgesrcDir ' staticfiles/ cartridge'
srcDir fileTree(dir: project.projectDir, include: 'edl/**')
releaseDirName = "${project.name}/release" 
files for the cartridge folder
sharesrcDir ' staticfiles/share'files for the shared filesystem
sourcesrcDir javasourceDirjavasource of a project
javadocsrcDir "${project.docsDir}/javadoc"
releaseDirName = "${project.name}/release/docs/api" 
JavaDoc files of a component

2.1.3.1 Methods

TypeMethodDescription
voidsrcDirs(Object... srcDirs)Add srcDirs. Pathes will be evaluated with project.file()
voidsrcDir(srcDir)Add srcDir object. A path will be evaluated with project.file()
voidsrcDir(srcDir, Closure<?> c)Add srcDir object. The closure must be from type CopySpec
voidsetSrcDirs(Iterable<?> srcPaths)Set the list of source directories of the package.

2.1.3.2 Property Details

TypePropertyDescriptionDefault Value
StringnameThe name of the package. This is used as type attribute for publishing.n.a.
StringclassifierThis is used for packages which are operating system specific.(null)
StringreleaseDirNameThe root path inside the package.n.a.

2.2 Extension Object jaxb (deprecated with Gradle Tools version 2.11.5)

This extension comes with the jaxb plugin. This plugin is automatically applied by the intershop-javabase plugin. With this extension the JAXB code generation is configured. For each configuration a jaxb task will be created.

Both examples generate the Java files of bc_mvc JAXB configuration.

jaxb {
    configs {
        bc_mvc {
            xsd = 'staticfiles/definition/bc_mvc.xsd'
            xjb = 'staticfiles/definition/bc_mvc.xjb'
        }
    }
}
jaxb {
    configs {
        bc_mvc {
            dir = 'staticfiles/definition'
        }
    }
}

2.2.1 Methods

TypeMethodDescription
NamedDomainObjectContainer< JaxbConfig>configs(closure)configs contains the configuration of different Jaxb configurations

2.2.2 Property Details

TypePropertyDescriptionDefault Value
StringoutputPathtarget for the code generationgenerated/jaxb
StringsourceSetNamethe output of the code generation will be added to this source set.main
StringxjcVersionThis is the currently used version. Please be aware that the server must support this version.2.2.4-1

2.2.3 Type JaxbConfig

This type describes a special Jaxb configuration.

2.2.3.1 Property Details

The following configurations of input files are valid:

  • Schema description file (xsd is specified)
  • Schema description file and JAXB binding file (xsd and xjb is specified)
  • An directory path
    This folder contains schema description files and JAXB binding files (only dir is specified).
TypePropertyDescriptionDefault Value
StringnameThe name of the configuration. This is used for the output of the generation.
Also the task name will be extended with this name.
n.a.
StringxsdThe file name of the XML schema description file. The path will be evaluated with project.file() (optional) n.a.
StringxjbThe file name of the  JAXB binding file. This will be evaluated with project.file() (optional) n.a.
StringdirDirectory with schema description and binding files. (optional) n.a.
StringpackageNameThe package name of the generated classes. (optional) n.a.

2.3 Extension Object jaxbSchemaGen (deprecated with Gradle Tools version 2.11.5)

This extension comes with the jaxbSchemaGen plugin. This plugin is automatically applied by the intershop-javabase plugin. With this extension the JAXB schema generation is configured. For each configuration a jaxbSchemaGen task will be created.

The example generates the schema file of ac_order_status_import_xml.

jaxbSchemaGen {
    configs {
        acorder {
            includes   = 'com/intershop/adapter/orderstatusimport/xml/binding/*.java'
            xsd        = 'share/system/impex/schema/ac_order_status_import_xml.xsd'
            namespace  = 'http://www.intershop.com/xml/ns/intershop/order/status/1.0'
        }
    }
}

2.3.1 Methods

TypeMethodDescription
NamedDomainObjectContainer< JaxbSchemaGenConfig>configs(closure)configs contains the configuration of different JaxbSchemaGen configurations

2.3.2 Property Details

TypePropertyDescriptionDefault Value
StringoutputPathtarget for the schema generationgenerated/jaxbSchemaGen
StringsourceSetNamethe classpath of the schema generation will include this source set.main
StringxjcVersionThis is the currently used version. Please be aware that the server must support this version.2.2.7

2.3.3 Type JaxbSchemaGenConfig

This type describes a special JaxbSchemaGen configuration.

2.3.3.1 Property Details

The following configuration of input files is valid:

  • Schema description file, include pattern and namespace (xsd, includes and namespace are specified)
TypePropertyDescriptionDefault Value
StringnameThe name of the configuration. This is used for the output of the generation.
Also the task name will be extended with this name.
n.a.
StringxsdThe file name of the resulting XML schema description file.n.a.
StringincludesThe pattern by which source code will be used to generate the schema, may use wildcards.n.a.
StringnamespaceThe namespace of the generated scheme.n.a.

2.4 Extension Object wsdl (deprecated with Gradle Tools version 2.11.6)

This extension comes with the wsdl plugin. This plugin is automatically applied by the intershop-javabase plugin. With this extension the WSDL code generation will be configured. For each configuration a wsdl2java task will be created.

wsdl {
    axis1Configs {
        processWebObjects {
            wsdlFile = 'staticfiles/wsdl/ProcessWebObjects.wsdl'
            packageName = 'com.intershop.beehive.core.capi.staging.webservice'
        }
    }
}
wsdl {
    axis1Configs {
        echoWebService {
            wsdlFile = 'staticfiles/wsdl/EchoWebService.wsdl'
            packageName = 'tests.server.com.intershop.beehive.core.internal.webservice.client'
        }
    }
    axis2Configs {
        addNumbersService {
            wsdlFile = 'staticfiles/wsdl/AddNumbersService.wsdl'
            packageName = 'tests.server.com.intershop.beehive.core.internal.axis2.additionservice.client'
        }
    }
}

2.4.1 Methods  

TypeMethodDescription
NamedDomainObjectContainer< Axis1Config>axis1Configs(closure)axis1Configs contains the configuration of different Axis 1 configurations
NamedDomainObjectContainer< Axis2Config>axis2Configs(closure)axis2Configs contains the configuration of different Axis 2 configurations

2.4.2 Property Details  

TypePropertyDescriptionDefault Value
StringoutputPathTarget for the code generationgenerated/wsdl
StringsourceSetNameThe output of the code generation will be added to this source set.main

2.4.3 Type Axis1Config

This type describes a special Axis 1 configuration.

2.4.3.1 Property Details

TypePropertyDescriptionDefault Value
StringnameThe name of the configuration. This is used for the output of the generation.
The task name will be extended with this name.
n.a.
StringwsdlFilePath to WSDL file. The path will be evaluated with project.file().n.a.
StringpackageNameThe package name of the generated classes (optional)n.a.
Map<String, String>namespacePackageMappingNamespace package mapping (optional)n.a.
booleangenerateAllClassesGenerates all elements, even unused ones (optional)false
StringnamespacePackageMappingFileFile for namespace mapping. The path will be evaluated with project.file() (optional)n.a.
booleangenerateTestcaseGenerates a test case for the generated codefalse
StringaxisVersionVersion of the used Axis version. Please be aware that the server must support this version.1.4
booleannoWrappingNo wrappingfalse
StringmodeMode to generate, supported CLIENT, SERVERn.a.
booleangenerateNoImportsOnly generates given WSDL and no importsfalse
inttimeoutTimeout configuration240
booleanwrapArrays

Prefers generating JavaBean classes like ArrayOfString or certain schema array patterns (default is to use String [])

true
StringuserNameUserName to access an external WSDLn.a.
StringpasswordPassword to access the WSDL-URIn.a.

2.4.4 Type Axis2Config 

This type describes a special Axis 2 configuration.

2.4.4.1 Property Details

TypePropertyDescriptionDefault Value
StringnameThe name of the configuration. This is used for the output of the generation.
Also the task name will be extended with this name.
n.a.
StringwsdlFilePath to WSDL file. The path will be evaluated with project.file().n.a.
StringpackageNameThe package name of the generated classes (optional)n.a.
Map<String, String>namespacePackageMappingNamespace package mapping (optional)n.a.
booleangenerateAllClassesGenerates all elements, even unused ones (optional)false
StringnamespacePackageMappingFileFile for namespace mapping. The path will be evaluated with project.file() (See also NStoPkg) (optional)n.a.
booleangenerateTestcaseGenerates a test case for the generated codefalse
StringaxisVersionVersion of the used Axis version. Please be aware that the server must support this version.1.6.2
booleannoWrappingNo wrappingfalse
StringmodeMode to generate, supported CLIENT, SERVERn.a.
StringlanguageLanguage of the generated codejava
StringserviceNameThe name of the service in the case of multiple services. If the service name is not specified, the first service will be picked.n.a.
StringportNameThe name of the port in the presence of multiple ports. If the port name is not specified, the first port (of the selected service) will be picked.n.a.
StringdatabindingNameThe Axis data binding: adb (default), xmlbeans, jaxbri, jibx).adb
StringsynchronizationModeSynchronization Mode: ALL, ASYNC, SYNCn.a.
StringwsdlVersionWSDL Version. Valid Options : 2, 2.0, 1.11.1
booleanunpackClassesUnpacks the generated classes. This forces the databinding classes to be generated separately, which otherwise would have been generated as inner classes.true

2.5 Extension Object isml (deprecated with Gradle Tools version 2.11.6)  

  This extension comes with the isml plugin. This plugin is automatically applied by the static-cartridge plugin. With this extension ISML templates will be compiled. For each configuration a isml2class task will be created.  

isml {
	main {
		ismlPath = 'staticfiles/cartridge/templates'
		compileClasspath = sourceSets.main.compileClasspath + sourceSets.main.output
	}
}

2.5.1 Methods  

TypeMethodDescription
NamedDomainObjectContainer<IsmlSourceSet>sourceSets(closure)Configures ISML source sets for this component

2.5.2 Property Details

TypePropertyDescriptionDefault Value
StringjspVersionVersion of the used Apache Tomcat for JSP compilation7.0.42
StringeclipseCompilerVersionApache Tomcat uses the Eclipse compiler. This version must correspond to the Apache Tomcat version4.2.2
StringtemplateEncodingDefault encoding for ISML template compilation.UTF-8

2.5.3 Type IsmlSourceSet

2.5.3.1 Property Details 

TypePropertyDescriptionDefault Value
StringnameThe name of the configuration. This is used for the output of the generation.
Also the task name will be extended with this name.
n.a.
StringismlPathPath with ISML files. The files must be organized in sub folders! This is in the most cases default or the language code.staticfiles/cartridge/templates
FileCollectioncompileClasspathThe classpath for the compile process.n.a.

There is one IsmlSourceSet main preconfigured for this plugin.

2.6 Extension Object tloc (deprecated with Gradle Tools version 2.3)

This extension comes with the tlocplugin. This plugin is automatically applied by the static-cartridge plugin. With this extension ISML templates will be localized if a special dictionary file is available. For each localization a tloc tasks will be created and an ISML source set tloc_<language code> is added to the list of ISML source sets, if the ISML plugin is applied. This tool should also be used during the development process (see TLoc documntation).

tloc {
    languages {
        de_De { }
    }
}

2.6.1 Methods

TypeMethodDescription
NamedDomainObjectContainer < Language>languages(closure)Configures the language for localization

2.6.2 Type IsmlSourceSet

2.6.2.1 Property Details   

TypePropertyDescriptionDefault Value
StringnameThe name of the configuration. This is used by default also for the language codede_De
StringlanguageCodeLanguage coden.a.

2.7 Extension Object javacc (deprecated with Gradle Tools version 2.11.5)

This extension comes with the javacc plugin. This plugin is automatically applied by the intershop-javabase plugin.

javacc {
    configs {
        ismlParser {
            inputFile = 'javasource/com/intershop/beehive/isml/internal/parser/ISMLparser.jj'
            outputPath = 'com/intershop/beehive/isml/internal/parser'
            javaUnicodeEscape = true
            ignoreCase = true
        }
    }
}
javacc {
    configs {
        oPExpression {
            inputFile = 'javasource/com/intershop/beehive/core/internal/opexpression/parser/OPExpressionGrammar.jjt'
            outputPath = 'com/intershop/beehive/core/internal/opexpression/parser'
            jdkVersion = '1.4'
            javaUnicodeEscape = true
            ignoreCase = true
            jjtree {
                visitor = true
                nodePrefix = ''
                nodeExtends = 'com.intershop.beehive.core.internal.opexpression.parser.SuperNode'
            }
        }
    }
}

2.7.1 Methods  

TypeMethodDescription
NamedDomainObjectContainer < JavaccConfig>configs( closure)Configures a JavaCC code generation.

2.7.2 Property Details

TypePropertyDescriptionDefault Value
StringsourceSetNamethe output of the code generation will be added to this source set .main

2.7.3 Type JavaccConfig

For more details of JavaCC you can find in the JavaCC documentation.

2.7.3.1 Methods    

TypeMethodDescription
  JJTree jjtree(closure) This contains the configuration of code generation with JJT ree, which runs before an the JavaCC.

2.7.3.2 Property Details

TypePropertyDescriptionDefault Value
StringnameThe name of the configuration. This is used for the output of the generation.
Also the task name will be extended with this name.
config
StringoutputPathThis is the target for of the JavaCC code generationgenerated/javacc/<name>
intlookaheadThe number of tokens to look ahead before making a decision at a choice point during parsing. The smaller this number is, the faster will be the parser. This number may be overridden for specific productions within the grammar as described later.1
intchoiceAmbiguityCheckThis is the number of tokens considered in checking choices of the form "A | B | ..." for ambiguity. For example, if there is a common two token prefix for both A and B, but no common three token prefix, (assume this option is set to 3) then JavaCC can tell you to use a lookahead of 3 for disambiguation purposes. And if A and B have a common three token prefix, then JavaCC only tell you that you need to have a lookahead of 3 or more . Increasing this can give you more comprehensive ambiguity information at the cost of more processing time. For large grammars such as the Java grammar, increasing this number any further causes the checking to take too much time.2
intotherAmbiguityCheckThis is the number of tokens considered in checking all other kinds of choices (i.e., of the forms "(A)*", "(A)+", and "(A)?") for ambiguity. This takes more time to do than the choice checking, and hence the default value is set to 1 rather than 2.1
booleanstaticParamIf true, all methods and class variables are specified as static in the generated parser and token manager. This allows only one parser object to be present, but it improves the performance of the parser. To perform multiple parses during one run of your Java program, you will have to call the  ReInit() method to reinitialize your parser if it is static. If the parser is non-static, you may use the "new" operator to construct as many parsers as you wish. These can all be used simultaneously from different threads.false
booleansupportClassVisibilityPublic

The default action is to generate support classes (such as Token.java, ParseException.java etc) with Public visibility. If set to false, the classes will be generated with package-private visibility.

true
booleandebugParserThis option is used to obtain debugging information from the generated parser. Setting this option to true causes the parser to generate a trace of its actions. Tracing may be disabled by calling the method  disable_tracing() in the generated parser class. Tracing may be subsequently enabled by calling the method  enable_tracing() in the generated parser class.false
booleandebugLookaheadSetting this option to true causes the parser to generate all the tracing information it does when the option debugParser is is true, and in addition, it causes to generate a trace of actions performed during lookahead operation.false
booleandebugTokenManagerThis option is used to obtain debugging information from the generated token manager. Setting this option to true causes the token manager to generate a trace of its actions. This trace is rather large and should only be used when you have a lexical error that has been reported to you and you cannot understand why. Typically, in this situation, you can determine the problem by looking at the last few lines of this trace.false
booleanerrorReportingSetting it to false causes errors due to parse errors to be reported in somewhat less detail. The only reason to set this option to false is to improve performance.true
booleanjavaUnicodeEscapeWhen set to true, the generated parser uses an input stream object that processes Java Unicode escapes (\u...) before sending characters to the token manager. By default, Java Unicode escapes are not processed. This option is ignored if either of options userTokenManager or userCharStream is set to true.false
booleanunicodeInputWhen set to true, the generated parser uses an input stream object that reads Unicode files. By default, ASCII files are assumed. false
booleanignoreCaseSetting this option to true causes the generated token manager to ignore case in the token specifications and the input files. This is useful for writing grammars for languages such as HTML.false
booleancommonTokenActionWhen set to true, every call to the token manager's method getNextToken will cause a call to a used defined method CommonTokenAction after the token has been scanned in by the token manager. The user must define this method within the TOKEN_MGR_DECLS section. The signature of this method is:
void CommonTokenAction(Token t)
false
booleanuserTokenManagerThe default action is to generate a token manager that works on the specified grammar tokens. If this option is set to true, the parser is generated to accept tokens from any token manager of type TokenManager - this interface is generated into the generated parser directory.false
booleanuserCharStreamThe default action is to generate a character stream reader as specified by the options javaUnicodeEscape and unicodeInput. The generated token manager receives characters from this stream reader. If this option is set to true, the token manager is generated to read characters from any character stream reader of type CharStream.java. This file is generated into the generated parser directory. false
booleanbuildParserThe default action is to generate the parser file (MyParser.java in the above example). When set to false, the parser file is not generated. Typically, this option is set to false if you wish to generate only the token manager and use it without the associated parser.true
booleanbuildTokenManagerThe default action is to generate the token manager file (MyParserTokenManager.java in the above example). When set to false the token manager file is not generated. The only reason to set this option to false is to save some time during parser generation when you fix problems in the parser part of the grammar file and leave the lexical specifications untouched.true
booleantokenManagerUsesParser

When set to true, the generated token manager will include a field called parser that references the instantiating parser instance (of type MyParser in the above example). The main reason for having a parser in a token manager is using some of its logic in lexical actions. This option has no effect if the staticParam option is set to true.

false
booleansanityCheckJavaCC performs many syntactic and semantic checks on the grammar file during parser generation. Some checks such as detection of left recursion, detection of ambiguity, and bad usage of empty expansions may be suppressed for faster parser generation by setting this option to false. Note that the presence of these errors (even if they are not detected and reported by setting this option to false) can cause unexpected behavior from the generated parser.true
booleanforceLaCheckThis option setting controls lookahead ambiguity checking performed by JavaCC. By default (when this option is false), lookahead ambiguity checking is performed for all choice points where the default lookahead of 1 is used. Lookahead ambiguity checking is not performed at choice points where there is an  explicit lookahead specification, or if the option lookahead is set to something other than 1. Setting this option to true performs lookahead ambiguity checking at all choice points regardless of the lookahead specifications in the grammar file.false
booleancacheTokensSetting this option to true causes the generated parser to lookahead for extra tokens ahead of time. This facilitates some performance improvements. However, in this case (when the option is true), interactive applications may not work since the parser needs to work synchronously with the availability of tokens from the input stream. In such cases, it is best to leave this option at its default value.false
booleankeepLineColumnThe line and column numbers will not be recorded in the token objects if the value is set to true.true
StringtokenExtendsThis meaning that the generated token class will extend java.lang.Object. This option may be set to the name of a class that will be used as the base class for the generated  Token  class.''
StringtokenFactoryThis meaning that tokens will be created by calling Token.newToken() . If set the option names a token factory class containing a public static Token newToken(int ofKind, String image) method.''
StringjdkVersionThe code will be generated for this JDK version.1.5

2.7.4 Type JJTree

For more details see JJTree Reference Documentation.

2.7.4.1 Property Details

TypePropertyDescriptionDefault Value
booleanmultiGenerate a multi mode parse tree.true
booleannodeDefaultVoidInstead of making each non-decorated production an indefinite node, make it void instead.false
booleannodeScopeHookInsert calls to user-defined parser methods on entry and exit of every node scope. false
booleannodeUsesParserJJTree will use an alternate form of the node construction routines where it passes the parser object in.false
booleanbuildNodeFiles

Generate sample implementations for SimpleNode and any other nodes used in the grammar.

true
booleantrackTokensInsert jjtGetFirstToken(), jjtSetFirstToken(), getLastToken(), and jjtSetLastToken() methods in SimpleNode.
The FirstToken is automatically set up on entry to a node scope; the LastToken is automatically set up on exit from a node scope.
false
booleanvisitorInsert a jjtAccept() method in the node classes, and generate a visitor implementation with an entry for every node type used in the grammar.false
StringnodeClassIf set defines the name of a user-supplied class that will extend  SimpleNode . Any tree nodes created will then be subclasses of NODE_CLASS.''
StringnodePrefixThe prefix used to construct node class names from node identifiers in multi mode.AST
StringnodePackageThe package to generate the node classes into. The default for this is the parser package.''
StringnodeExtendsThe superclass for the SimpleNode class. By providing a custom superclass you may be able to avoid the need to edit the generated SimpleNode.java.''
StringnodeFactorySpecify a class containing a factory method with following signature to construct nodes: 
public static Node jjtCreate(int id)  
For backwards compatibility, the value false may also be specified, meaning that SimpleNode will be used as the factory class.
''
StringvisitorDataTypeIf this option is set, it is used in the signature of the generated  jjtAccept() methods and the visit() methods as the type of the data argument.''
StringvisitorReturnTypeIf this option is set, it is used in the signature of the generated  jjtAccept() methods and the visit() methods as the return type of the method.java.lang.Object
StringvisitorExceptionIf this option is set, it is used in the signature of the generated  jjtAccept() methods and the visit() methods.''

2.8 Extension Object resourcelist (deprecated with Gradle Tools version 2.11.5)

This extension comes with the resourcelist plugin. This plugin is automatically applied by the javabase-cartridge plugin. The following configurations will be created by the plugin:

resourcelist {
	lists {
		orm {
			source sourceSets.main.allSource.getSrcDirs()
			include '**/**/*.orm'
			resourceListFile = new File(sourceSets.main.output.getResourcesDir(), "resources/${project.name}/orm/orm.resource")
		}
		pipelets {
			source sourceSets.main.allSource.getSrcDirs()
			include '**/pipelet/**/*.xml'
			exclude '**/*_??_??.xml'
			resourceListFile = new File(sourceSets.main.output.getResourcesDir(), "resources/${project.name}/pipeline/pipelets.resource")
		}
	}
}

2.8.1 Methods  

TypeMethodDescription
NamedDomainObjectContainer< ListConfiguration>lists(closure)Configures a generation of special resource files from existing code artifacts. For each configuration a task will be created.

2.8.2 Type ListConfiguration      

A ListConfiguration describes a resource list generation and extends PatternSet. For more properties and methods see PatternSet.

2.8.2.1 Methods  

TypeMethodDescription
  add(Object)Add source directory to list of source dirs. The parameter will be evaluated with project.file().  

2.8.2.2   Property Details  

TypePropertyDescriptionDefault Value
StringnameThis is the name of the configuration. The name will be used for the task name.res
Stringextension This is used to filter the source files. If this value is not specified, the value of the property name is used for this property. 
ListsrcDirsThis is the list of source directories for resource file creation.  The parameter will be evaluated with project.files().    empty list
FileresourceListFileThe generated resource file. 

2.9 Extension Object sonarqube (deprecated with Gradle Tools version 2.7)

This extension comes with the intershop-sonar plugin.

Note

The old plugin is still part of the delivery, but not longer automatically included in the build process.

 

2.9.1 Methods

TypeMethodDescription
  runnerArgs(String)Add arguments for SonarQube runner 

2.9.2 Property Details 

TypePropertyDescriptionDefault Value
ListmodulesReturns a list of modules which should be analysed.java
Since version 2.2: java, js, css 
StringsonarHostUrl

This is the URL of the SonarQube server.
The value of the property sonarHostUrl will be used from the plugin instead of the extension setting.

 
StringsonarLoginThis is the login of the user.
The value of the property sonarLogin will be used from the plugin instead of the extension setting.
empty list
StringsonarPasswordThis is the password of the user.
The value of the property sonarPassword will be used from the plugin instead of the extension setting.
 
StringsonarJDBCUrlThis is the JDBC url of the SonarQube database.
The value of the property sonarJDBCUrl will be used from the plugin instead of the extension setting.
 
StringsonarJDBCDriverClassNameThis is the JDBC driver class for the database access.
The value of the property sonarJDBCDriverClass will be used from the plugin instead of the extension setting.
 
StringsonarJDBCUserNameThe value of the property sonarJDBCUserName will be used from the plugin instead of the extension setting. 
StringsonarJDBCPasswordThe value of the property sonarJDBCPassword will be used from the plugin instead of the extension setting. 
StringbranchVersionThe value of the property branchVersion will be used from the plugin instead of the extension setting.trunk

3 Plugins

3.1 Plugin intershop-base

This plugin add the Intershop extension to the project. The following plugins will be applied with this plugin: base, java-base and ivy-publish. For more information see Standard Gradle plugins . This plugin will change or add some configurations:

creates the SourceSet main

extend classpath with internal liberaries from the source folder staticfiles/cartridge/lib

changes the behavior of the compile configuration to non transitive

additional artifacts of an Intershop component are pre-configured in this plugin (see ComponentPackage).

add an Intershop component configuration for publishing (see Gradle documentation): components.intershop

add an IVY publishing configuration for Intershop components

The workflow of tasks will be not changed by this plugin. All tasks and the workflow is implemented by standard Gradle cartridges.

3.2 Plugin cartridge-base

This plugin applies the plugin intershop-base. A component, that is installed in the Intershop cartridge folder, includes always an artifact for the shared file system. Therefore the artifact share is added by this plugin (see ComponentPackage).

3.3 Plugin intershop-javabase

This plugin applies the plugin intershop-base. Plugins for some special code generation are also applied by this plugins:

jaxb plugin

wsdl plugin

javacc plugin

intershop-sonar plugin

This plugin will change or add some configurations:

Add javaSourceDir of the Intershop extension as a source directory to SourceSet main.

SourceSet test is created and javaSourceDir of the Intershop extension as a source directory is added. Furthermore the the include and exclude is changed.

sourceSets {
	main {
    	java {
			srcDir project.extensions.intershop.javaSourceDir
      		include '**/**/*.java'
    	}
		resources {
			srcDir project.extensions.intershop.javaSourceDir
			include '**/**/**'
      		exclude '**/**/*.java'
		}
  	}
	test {
		java {
			srcDir project.extensions.intershop.javaSourceDir
      		include 'tests/**/**'
			exclude 'tests/server/**/*.java'
			exclude 'tests/unit/**/*.java'		
		}
	}
}

The classpaths of the compile configuration of main and the runtime configuration test are extended.

The following configurations are added: testRuntime, testCompile, source and javadoc.

This plugin adds also some tasks: test and jar<SourceSet name>.

Workflow

Workflow - intershop-javabase

3.4 Plugin intershop-java

This plugin applies the intershop-javabase plugin. It extends the IVY publishing of the jar file. Furthermore the javadoc task is added to the workflow.

3.5 Plugin javabase-component

This plugin applies the intershop-javabase plugin. It changes the configuration of the SourceSet main.

sourceSets {
	main {
    	java {
			exclude 'tests/**/**'
    	}
		resources {
      		exclude 'tests/**/**'
		}
  	}
}

3.6 Plugin java-component

This plugin applies the intershop-java plugin. It changes the configuration of the SourceSet main (see javabase-component).

3.7 Plugin javabase-cartridge

This plugin applies cartridge-base, intershop-java and resourcelist plugin. The configuration of the compiler is extended for annotation processing.

If the project.extensions.intershop.compilerWarningsEnabled is true the following compiler options are added:

'-Xlint:deprecation'
'-Xlint:unchecked'
'-Xlint:path'

3.8 Plugin java-cartridge

This plugin applies javabase-cartridge.

The following additional artifacts will be added:

if the value of project property releaseWithSources is true, the source package will be created

if the value of project property releaseWithJavaDoc is true, the javadoc package will be created

The default value of both properties is false. If the properties are true, tasks will be added to the workflow - javadoc will be executed before the packaging starts.

3.9 Plugin static-component

This plugin applies intershop-base plugin without any changes. This is a place holder for further versions.

3.10 Plugin static-cartridge

This plugin applies cartridge-base, tloc and isml plugin. This plugin adds also the 'cartridge' additional package.

Workflow

workflow - static-cartridge

3.11 Plugin test-cartridge

This plugin is currently identical to javabase-cartridge. This is a place holder for further versions.

3.12 Plugin lib-cartridge (deprecated with Gradle Tools 2.11.5)

This plugin applies the javabase-cartridge plugin without any other changes. It adds also the Task check, if this is not available in the task list. This is necessary for a "library" cartridge - a cartridge that contains only other libraries.

This kind of cartridges is deprecated, please use standard Gradle dependencies instead.

3.13 Plugin tool-cartridge (deprecated with Gradle Tools 2.11.5)

This plugin applies the intershop-java plugin. This is necessary for a "tools" cartridge - a cartridge that contains only other libraries. The additional jar file contains an entry in the manifest of the jar. This extends the classpath and is necessary for some tools.

This kind of cartridges is deprecated, please use standard Gradle dependencies instead.

3.14 Plugin jaxb (deprecated with Gradle Tools 2.11.5)

This plugin adds the jaxb extension. This plugin adds the JAXB code generation to the Intershop build plugins.
Please use the public available 'Jaxb code generator plugin' (jaxb-gradle-plugin). 

3.15 Plugin jaxbSchemaGen (deprecated with Gradle Tools 2.11.5)

This plugin adds jaxbSchemaGen extension. This plugin adds the JAXB schema generator to the Intershop build plugins.
Please use the public available 'Jaxb code generator plugin' (jaxb-gradle-plugin). 

3.16 Plugin wsdl (deprecated with Gradle Tools 2.11.6)

This plugin adds the wsdl extension. This plugin adds the WSDL code generation for Axis and Axis 2 to the Intershop build plugins.

3.17 Plugin javacc (deprecated with Gradle Tools 2.11.5)

This plugin adds the javacc extension. This plugin adds the JavaCC code generation to the Intershop build plugins.
Please use the public available 'WSDL code generator plugin' (wsdl-gradle-plugin).

3.18 Plugin intershop-sonar (deprecated with Gradle Tools 2.11.5)

This plugin adds the sonarqube extension. This plugin adds the Sonar code analyses to the Intershop build plugins. The task run the Sonar starter library and starts a separate Java process.
This plugin is deprecated, please use (sonarqube-gradle-plugin) or the standard Plugin from SonarQube.  

3.19 Plugin resourcelist (deprecated with Gradle Tools 2.11.5)

This plugin adds the resourcelist extension. This plugin adds the resourcelist generation to the Intershop build plugins.
Please use the public available 'ResourceList generator plugin' (resourcelist-gradle-plugin).

3.20 Plugin tloc (deprecated with Gradle Tools 2.3)

This plugin adds the tloc extension. This plugin add the ISML localization template generation to the Intershop build plugins. For the generated ISML templates the ISML configuration will be extended. An additional ISML source set is added.

3.21 Plugin isml (deprecated with Gradle Tools 2.11.6)

This plugin adds the isml extension. This plugin pre-compiles ISML templates.

Disclaimer

The information provided in the Knowledge Base may not be applicable to all systems and situations. Intershop Communications will not be liable to any party for any direct or indirect damages resulting from the use of the Customer Support section of the Intershop Corporate Web site, including, without limitation, any lost profits, business interruption, loss of programs or other data on your information handling system.

Customer Support
Knowledge Base
Product Resources
Support Tickets