Full name:

org.jsxm.maven.plugin:jsxm-maven-plugin:1.4.11-RC5:compile-repast

Description:

Goal that compiles the JSXM specifications and transforms them to Repast agents. The created java classes can be moved directly to the Repast project by providing the repastCopyDirectory property.

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
javaDirectoryRepast 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/.
jsxmSpecRootDirRepast String Version 1.0 Sets the directory for all the repast specifications. The default value is the spec directory under src-->src/spec.
Default value is: ${basedir}/src/spec/.
kInputRepast String Version 1.0 Sets the k value that is going to be used in the generation of tests. The default value is 2.
Default value is: 2.
m2HomeRepast 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}.
modeRepast 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}.
repastCopyDirectory String Version 1.0 Sets the directory which the [specName]SXM.java and [specName]SXM_base.java are going to be copied. There is no default value for this property. Omitting this property will cause build failure in the compile-repast goal.
repastSxmBaseImports String Version 1.0 JSXM imports for the SXM_base.java. The default imports are import org.jsxm.jsxmcore.core.*;\n import org.jsxm.spatial.SXMSpatial;\n
Default value is: import org.jsxm.jsxmcore.core.*; import org.jsxm.jsxmcore.exceptions.*; import org.jsxm.spatial.SXMSpatial; .
repastSxmBaseInheritance String Version 1.0 The type that the SXM_base.java is inheriting. The default value is SXMSpatial
Default value is: SXMSpatial.
repastSxmImports String Version 1.0 Repast imports for the SXM.java. The default imports are import org.jsxm.jsxmcore.core.*;\n import org.jsxm.jsxmcore.types.*;\n import java.util.*;\n import repast.simphony.engine.schedule.ScheduledMethod;\n import repast.simphony.random.*;\n import repast.simphony.query.space.grid.*;\n import repast.simphony.space.grid.*;\n import repast.simphony.space.*;\n import repast.simphony.context.*;\n import repast.simphony.util.*;\n"
Default value is: import org.jsxm.jsxmcore.core.*; import org.jsxm.jsxmcore.types.*; import org.jsxm.jsxmcore.exceptions.*; import java.util.*; import repast.simphony.engine.schedule.ScheduledMethod; import repast.simphony.random.*; import repast.simphony.query.space.grid.*; import repast.simphony.space.grid.*; import repast.simphony.space.*; import repast.simphony.context.*; import repast.simphony.util.*; .
tempTargetRepast 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}.
testDirectoryRepast 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&gtLibrary</name> <value&gt4</value>> </property> <property> <name>Book</name> <value&gt5</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

javaDirectoryRepast:

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/

jsxmSpecRootDirRepast:

Sets the directory for all the repast specifications. The default value is the spec directory under src-->src/spec.
  • Type: java.lang.String
  • Since: Version 1.0
  • Required: Yes
  • Default: ${basedir}/src/spec/

kInputRepast:

Sets the k value that is going to be used in the generation of tests. The default value is 2.
  • Type: java.lang.String
  • Since: Version 1.0
  • Required: Yes
  • Default: 2

kList:

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&gtLibrary</name> <value&gt4</value>> </property> <property> <name>Book</name> <value&gt5</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

m2HomeRepast:

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}

modeRepast:

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

pdfReportFlag:

Boolean for creating a pdf report of the log, system configuration and user settings.
  • Type: boolean
  • Since: Version 1.0
  • Required: Yes
  • Default: true

projectName:

The name of the project.
  • Type: java.lang.String
  • Since: Version 1.0
  • Required: Yes
  • Default: ${project.name}

repastCopyDirectory:

Sets the directory which the [specName]SXM.java and [specName]SXM_base.java are going to be copied. There is no default value for this property. Omitting this property will cause build failure in the compile-repast goal.
  • Type: java.lang.String
  • Since: Version 1.0
  • Required: Yes

repastSxmBaseImports:

JSXM imports for the SXM_base.java. The default imports are import org.jsxm.jsxmcore.core.*;\n import org.jsxm.spatial.SXMSpatial;\n
  • Type: java.lang.String
  • Since: Version 1.0
  • Required: Yes
  • Default: import org.jsxm.jsxmcore.core.*; import org.jsxm.jsxmcore.exceptions.*; import org.jsxm.spatial.SXMSpatial;

repastSxmBaseInheritance:

The type that the SXM_base.java is inheriting. The default value is SXMSpatial
  • Type: java.lang.String
  • Since: Version 1.0
  • Required: Yes
  • Default: SXMSpatial

repastSxmImports:

Repast imports for the SXM.java. The default imports are import org.jsxm.jsxmcore.core.*;\n import org.jsxm.jsxmcore.types.*;\n import java.util.*;\n import repast.simphony.engine.schedule.ScheduledMethod;\n import repast.simphony.random.*;\n import repast.simphony.query.space.grid.*;\n import repast.simphony.space.grid.*;\n import repast.simphony.space.*;\n import repast.simphony.context.*;\n import repast.simphony.util.*;\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.*; import java.util.*; import repast.simphony.engine.schedule.ScheduledMethod; import repast.simphony.random.*; import repast.simphony.query.space.grid.*; import repast.simphony.space.grid.*; import repast.simphony.space.*; import repast.simphony.context.*; import repast.simphony.util.*;

tempTargetRepast:

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}

testDirectoryRepast:

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/

Back to top

Version: 1.4.11-RC5. Last Published: 2017-11-30.