Goals available for this plugin:

Goal Description
jsxm:animate-console Goal which triggers the animation of jsxm specifications using the console for inputs.
jsxm:animate-gui Goal which triggers the animation of JSXM specifications using a graphical environment. The GUI offers visual representation of the animation allows easy switch between animating JSXMs.
jsxm:banimate Goal that batch animate the jsxm specifications. The current options are to batch animate specific specifications by declaring them in the configuration section of the plugin in the pom.xml. The second option is by declaring the parameter banimateAll to true in the configuration section of the plugin and as a result to batch animate all the specifications.
jsxm:classpath Goal that adds all the specifications in the build path as class path entries.
jsxm:compile 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.
jsxm:compile-repast 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.
jsxm:copy-external-package Goal that copies the java package structure of external java libraries and creates the same structure inside the specification(spec) folder. Finally it adds the new created folders to the build path in order to provide access to specification directly from the package explorer.
jsxm:copy-package Goal that copies the java package structure of the project and creates the same structure inside the specification(spec) folder. Finally it adds the new created folders to the build path in order to provide access to specification directly from the package explorer.
jsxm:create-prototype Goal that creates the spec directory, the additional directories needed for each specification and create the template file of [specName].xml and [specName]_sets.xml. The template includes implementation and adapters for the implementation.
jsxm:create-sample Goal that creates the spec directory, the additional directories needed for each specification and the template file of [specName].xml and [specName]_sets.xml. The template includes implementation and adapters for the implementation.
jsxm:generate Goal that generates the jsxm specification test and transforms them. External implementation support. Java implementation that is not provided in the src folder of the project will use the import of the Adapter as a package, and add the jsxm as root package. External implementation is processed automatically in case local implementation is not found. In case the implementations can not be found by the IDE or is not available in the classpath you should provide it in the classpath in order to be used by the Adapters.
jsxm:help Display help information on jsxm-maven-plugin.
Call mvn jsxm:help -Ddetail=true -Dgoal=<goal-name> to display parameter details.
jsxm:profile Goal that profiles all the specifications of a project using different implementations of thread pools. The goal can be very CPU and MEMORY intensive depending on the configuration. The current goal is dependent in the executions variable. The goal runs each phase of the JSXM tool with 4 different settings. The phases are validate, compile, generate, transform. The setting are:
newFixedThreadPool with all the available processors, newCachedThreadPool, newSingleThreadExecutor, newFixedThreadPool with one thread.
Executions should be used with caution due to the fact that too many executions in a very intensive specification can cause huge amounts of IO, resulting in huge log files and make your system unresponsive. An acceptable amount of executions is 4 which is the default number.
jsxm:validate Goal that validates all the XML files that are hanlded by JSXM. JSXM specifications, sets, definitions, inputs, outputs and abstract XML tests are validated against the XSD schemas that are available on www.jsxm.org.

System Requirements

The following specifies the minimum requirements to run this Maven plugin:

Maven 2.0
JDK 1.7
Memory No minimum requirement.
Disk Space No minimum requirement.

Usage

You should specify the version in your project's plugin configuration:

<project>
  ...
  <build>
    <!-- To define the plugin version in your parent POM -->
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.jsxm.maven.plugin</groupId>
          <artifactId>jsxm-maven-plugin</artifactId>
          <version>1.4.11-RC5</version>
        </plugin>
        ...
      </plugins>
    </pluginManagement>
    <!-- To use the plugin goals in your POM or parent POM -->
    <plugins>
      <plugin>
        <groupId>org.jsxm.maven.plugin</groupId>
        <artifactId>jsxm-maven-plugin</artifactId>
        <version>1.4.11-RC5</version>
      </plugin>
      ...
    </plugins>
  </build>
  ...
</project>

For more information, see "Guide to Configuring Plug-ins"

Back to top

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