For various Structure101 operations the Build configuration file must reference a Structure101 .hsp project file (previously created using Structure101 Studio). This provides Build the location of the file(s) to parse in order to generate the structural model. The project file may also contain overlays, actions, transforms and excludes to be applied to the model.
The path to the Structure101 project file (*.hsp) is specified in the local-project argument in the common arguments element.
A number of the settings specified in the.hsp project file can be overridden in the build configuration file.
The most common project file argument to override is the classpath. You can override the classpath using either of the following formats:
- single value string
<override attribute="classpath" value="C:\my-project-dir1;C:\my-project-dir2"/>
Classpath separators are operating system specific, semi-colon on Windows, and colon on OS X and Linux.
- separate classpath entries
<override attribute=“classpath”> <classpathentry module=“httpclient” path=“const(THIS_FILE)/jars/httpclient-4.5.4.jar” /> <classpathentry module=“findbugs” path=“const(THIS_FILE)/jars/0.8.6/findbugs.jar” /> </override>
If 'module' is not specified a name will be derived from the 'path'.
If using the 'classpathentry' syntax ensure the classpath itself has no value, otherwise its value will be used and the individual classpath entries will be ignored.
Additionally the following Boolean arguments can be overridden by setting to “true” or “false” as required:
- overview (default false)
- externals (default false)
- showPoms (default true)
- needstocompile (default false)
- include-injected-dependency (default false)
And the root pom specified in the project file can be overridden with:
- pom-root-files=<path-to-root-pom>
No project file
If you do not wish to use a local project file do not specify a "value" for the "local-project" argument, in which case you must use overrides. For example:
<argument name=“local-project”> <override attribute=“classpath”> <classpathentry module=“httpclient” path=“const(THIS_FILE)/jars/httpclient-4.5.4.jar” /> <classpathentry module=“findbugs” path=“const(THIS_FILE)/jars/0.8.6/findbugs.jar” /> </argument> </argument>