jsxm:compile
Full name:
org.jsxm.maven.plugin:jsxm-maven-plugin:1.4.11-RC5:compile
Description:
Goal that compiles the JSXM specifications. The goal creates all the SXM java files derived from the JSXM model and compiles the java classes. XSD parsing is handled by this goal as well.
Attributes:
- Requires a Maven project to be executed.
- Since version: Version 1.0.
- Binds by default to the lifecycle phase: compile.
- Invokes the execution of this plugin's goal validate prior to executing itself.
Required Parameters
Name | Type | Since | Description |
---|---|---|---|
javaDirectory | File | Version 1.0 | Sets the implementation directory of the maven project. The default value is the src/main/java of the maven project. Default value is: ${basedir}/src/main/java/. |
jsxmSpecRootDir | String | Version 1.0 | Sets the directory for all the jsxm specifications. The default value is the specdirectory under src/spec. Default value is: ${basedir}/src/spec/. |
jsxmSxmBaseImports | String | Version 1.0 | JSXM imports for the SXM_base.java. The default imports are import org.jsxm.jsxmcore.core.*;\n import org.jsxm.jsxmcore.exceptions.*;\n\n Default value is: import org.jsxm.jsxmcore.core.*; import org.jsxm.jsxmcore.exceptions.*; . |
jsxmSxmBaseInheritance | String | Version 1.0 | The type that the SXM_base.java is inheriting. The default value is SXM Default value is: SXM. |
jsxmSxmImports | String | Version 1.0 | JSXM imports for the SXM.java. The default imports are import org.jsxm.jsxmcore.core.*;\n import org.jsxm.jsxmcore.types.*;\n Default value is: import org.jsxm.jsxmcore.core.*; import org.jsxm.jsxmcore.types.*; import org.jsxm.jsxmcore.exceptions.*; . |
kInput | String | Version 1.0 | Sets the k value that is going to be used in the generation of tests. The default valee is 2. Default value is: 2. |
m2Home | String | Version 1.0 | Sets the maven local repository. By default the value is the default value set by maven . Default value is: ${settings.localRepository}. |
mode | String | Version 1.0 | Sets the mode of the maven project. Verbose and overwrite are the available options. By default the mode is set to overwrite. Default value is: overwrite. |
pdfReportFlag | boolean | Version 1.0 | Boolean for creating a pdf report of the log, system configuration and user settings. Default value is: true. |
projectName | String | Version 1.0 | The name of the project. Default value is: ${project.name}. |
tempTarget | String | Version 1.0 | Sets the temp directory that temporary files from jsxm are going to be saved. The default value is inside the target directory of a maven project. Default value is: ${project.build.directory}. |
testDirectory | String | Version 1.0 | Sets the test directory of the maven project. The default value is the src/test/java of the maven project. Default value is: ${basedir}/src/test/java/. |
Optional Parameters
Name | Type | Since | Description |
---|---|---|---|
kList | Properties | Version 1.0 | List in order to provide different k for each specification. For example if a specification A needs k=2 and specification B k=4 kList must contain, <param></param> The kList is a list of properties that allows the execution of examples with a different k than the default. In case an example contains more than one specification, then there is the possibility to need a different k value for some of the specifications but at the same time not changing the general k value. In order to use this tag the following configuration must be followed. <kList> <property> <name></name> <value></value> </property> </kList> Consider the example Book_Borrower which contains 3 specifications. \The specifications Book, Borrower and Library will use the k value 2 in case none configuration is specified. On the other hand, if you would like to execute the Library specification with a k=4, and Book with k=5 then you should consider the following. <kList> <property> <name>Library</name> <value>4</value>> </property> <property> <name>Book</name> <value>5</value> </property> </kList> The above setting will override the default k and will use the specified instead. The Borrower specification will use k=2. The name tag must be identical with the specification name. |
Parameter Details
Sets the implementation directory of the maven project. The default value is the src/main/java of the maven project.
- Type: java.io.File
- Since: Version 1.0
- Required: Yes
- Default: ${basedir}/src/main/java/
Sets the directory for all the jsxm specifications. The default value is the specdirectory under src/spec.
- Type: java.lang.String
- Since: Version 1.0
- Required: Yes
- Default: ${basedir}/src/spec/
JSXM imports for the SXM_base.java. The default imports are import org.jsxm.jsxmcore.core.*;\n import org.jsxm.jsxmcore.exceptions.*;\n\n
- Type: java.lang.String
- Since: Version 1.0
- Required: Yes
- Default: import org.jsxm.jsxmcore.core.*; import org.jsxm.jsxmcore.exceptions.*;
The type that the SXM_base.java is inheriting. The default value is SXM
- Type: java.lang.String
- Since: Version 1.0
- Required: Yes
- Default: SXM
JSXM imports for the SXM.java. The default imports are import org.jsxm.jsxmcore.core.*;\n import org.jsxm.jsxmcore.types.*;\n
- Type: java.lang.String
- Since: Version 1.0
- Required: Yes
- Default: import org.jsxm.jsxmcore.core.*; import org.jsxm.jsxmcore.types.*; import org.jsxm.jsxmcore.exceptions.*;
Sets the k value that is going to be used in the generation of tests. The default valee is 2.
- Type: java.lang.String
- Since: Version 1.0
- Required: Yes
- Default: 2
List in order to provide different k for each specification. For example if a specification A needs k=2 and specification B k=4 kList must contain, <param></param> The kList is a list of properties that allows the execution of examples with a different k than the default. In case an example contains more than one specification, then there is the possibility to need a different k value for some of the specifications but at the same time not changing the general k value. In order to use this tag the following configuration must be followed. <kList> <property> <name></name> <value></value> </property> </kList> Consider the example Book_Borrower which contains 3 specifications. \The specifications Book, Borrower and Library will use the k value 2 in case none configuration is specified. On the other hand, if you would like to execute the Library specification with a k=4, and Book with k=5 then you should consider the following. <kList> <property> <name>Library</name> <value>4</value>> </property> <property> <name>Book</name> <value>5</value> </property> </kList> The above setting will override the default k and will use the specified instead. The Borrower specification will use k=2. The name tag must be identical with the specification name.
- Type: java.util.Properties
- Since: Version 1.0
- Required: No
Sets the maven local repository. By default the value is the default value set by maven .
- Type: java.lang.String
- Since: Version 1.0
- Required: Yes
- Default: ${settings.localRepository}
mode:
Sets the mode of the maven project. Verbose and overwrite are the available options. By default the mode is set to overwrite.
- Type: java.lang.String
- Since: Version 1.0
- Required: Yes
- Default: overwrite
Boolean for creating a pdf report of the log, system configuration and user settings.
- Type: boolean
- Since: Version 1.0
- Required: Yes
- Default: true
The name of the project.
- Type: java.lang.String
- Since: Version 1.0
- Required: Yes
- Default: ${project.name}
Sets the temp directory that temporary files from jsxm are going to be saved. The default value is inside the target directory of a maven project.
- Type: java.lang.String
- Since: Version 1.0
- Required: Yes
- Default: ${project.build.directory}
Sets the test directory of the maven project. The default value is the src/test/java of the maven project.
- Type: java.lang.String
- Since: Version 1.0
- Required: Yes
- Default: ${basedir}/src/test/java/