| 描述: |
This open source software is a reference implementation, consisting of software and related files, for the OMG specification called the Semantics of a Foundational Subset for Executable UML Models (fUML). The reference implementation is intended to implement the execution semantics of UML activity models, accepting an XMI file from a conformant UML model as its input and providing an execution trace of the selected activity model(s) as its output. The core execution engine, which is directly generated from the normative syntactic and semantic models for fUML, may also be used as a library implementation of fUML in other software. |
| POM文件内容: |
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.modeldriven</groupId>
<artifactId>fuml</artifactId>
<packaging>jar</packaging>
<name>FUML Reference Implementation</name>
<version>1.1.4</version>
<description>This open source software is a reference implementation, consisting of software and related files, for the OMG specification called the Semantics of a Foundational Subset for Executable UML Models (fUML). The reference implementation is intended to implement the execution semantics of UML activity models, accepting an XMI file from a conformant UML model as its input and providing an execution trace of the selected activity model(s) as its output. The core execution engine, which is directly generated from the normative syntactic and semantic models for fUML, may also be used as a library implementation of fUML in other software.</description>
<url>http:/fuml.modeldriven.org</url>
<licenses>
<license>
<name>FUML Reference Implementation License</name>
<url>https://github.com/ModelDriven/fUML-Reference-Implementation/blob/master/org.modeldriven.fuml/Licensing-Information.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<scm>
<url>https://github.com/ModelDriven/fUML-Reference-Implementation</url>
<connection></connection>
</scm>
<developers>
<developer>
<id>eds</id>
<name>Ed Seidewitz</name>
<email>ed-s@modeldriven.com</email>
</developer>
<developer>
<id>scinnamond</id>
<name>Scott Cinnamond</name>
<email>scinnamond@gmail.com</email>
</developer>
</developers>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<xjc.output.dir>${project.build.directory}/generated-sources/java</xjc.output.dir>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.1</version>
</dependency>
<dependency>
<groupId>xerces</groupId>
<artifactId>xerces</artifactId>
<version>1.4.4</version>
</dependency>
<dependency>
<groupId>xalan</groupId>
<artifactId>xalan</artifactId>
<version>2.6.0</version>
<exclusions>
<exclusion>
<artifactId>xml-apis</artifactId>
<groupId>xml-apis</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.8</version>
</dependency>
<dependency>
<groupId>stax-utils</groupId>
<artifactId>stax-utils</artifactId>
<version>snapshot-20040917</version>
</dependency>
<dependency>
<groupId>com.sun.xml.stream</groupId>
<artifactId>sjsxp</artifactId>
<version>1.0.1</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<!-- jaxb2-maven-plugin does not work with latest version of java http://www.journaldev.com/1312/how-to-generate-java-classes-from-xsd-using-xjc-maven-plugin
http://mojo.codehaus.org/jaxb2-maven-plugin/ -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>fuml-config</id>
<phase>generate-sources</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<mkdir dir="${xjc.output.dir}" />
<exec executable="xjc">
<arg
line="-d ${xjc.output.dir}
-extension
-b ${basedir}/src/main/resources/org/modeldriven/fuml/config/jaxb-bindings.xml
${basedir}/src/main/resources/org/modeldriven/fuml/config/FumlConfig.xsd" />
</exec>
</target>
</configuration>
</execution>
<execution>
<id>repo-config</id>
<phase>generate-sources</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<mkdir dir="${xjc.output.dir}" />
<exec executable="xjc">
<arg
line="-d ${xjc.output.dir}
-extension
-b ${basedir}/src/main/resources/org/modeldriven/fuml/repository/jaxb-bindings.xml
${basedir}/src/main/resources/org/modeldriven/fuml/repository/RepositoryConfig.xsd" />
</exec>
</target>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>${xjc.output.dir}</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
<!-- <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>jaxb2-maven-plugin</artifactId>
<executions> <execution> <id>fuml-config</id> <phase>generate-sources</phase>
<goals> <goal>xjc</goal> </goals> <configuration> <schemaDirectory>${basedir}/src/main/resources/org/modeldriven/fuml/config</schemaDirectory>
<schemaFiles>FumlConfig.xsd</schemaFiles> <bindingDirectory>${basedir}/src/main/resources/org/modeldriven/fuml/config</bindingDirectory>
<bindingFiles>jaxb-bindings.xml</bindingFiles> <staleFile>${project.build.directory}/jaxb2/.xjcStaleFlag-fuml-config</staleFile>
</configuration> </execution> <execution> <id>repo-config</id> <phase>generate-sources</phase>
<goals> <goal>xjc</goal> </goals> <configuration> <schemaDirectory>${basedir}/src/main/resources/org/modeldriven/fuml/repository</schemaDirectory>
<schemaFiles>RepositoryConfig.xsd</schemaFiles> <bindingDirectory>${basedir}/src/main/resources/org/modeldriven/fuml/repository</bindingDirectory>
<bindingFiles>jaxb-bindings.xml</bindingFiles> <staleFile>${project.build.directory}/jaxb2/.xjcStaleFlag-repo-config</staleFile>
</configuration> </execution> </executions> <configuration> <!- - HACK: where
is 'generated-sources' defined ?? - -> <outputDirectory>${project.build.directory}/generated-sources/java</outputDirectory>
<clearOutputDir>false</clearOutputDir> <extension>true</extension> <target>2.0</target>
<encoding>Cp1252</encoding> </configuration> </plugin> -->
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.7</version>
<dependencies>
<dependency>
<groupId>sun.jdk</groupId>
<artifactId>tools</artifactId>
<version>1.5.0</version>
<scope>system</scope>
<systemPath>${java.home}/../lib/tools.jar</systemPath>
</dependency>
</dependencies>
<executions>
<execution>
<id>generate-model-factories</id>
<!-- use process-classes phase rather than generate-sources as have
a compile phase dependency on XSLTUtils -->
<phase>generate-sources</phase>
<configuration>
<target name="generate-model-factories">
<echo message="#### generate-model-factories ####" />
<property name="compile_classpath" refid="maven.compile.classpath" />
<property name="deps_classpath" refid="maven.dependency.classpath" />
<path id="cp">
<pathelement path="${compile_classpath}" />
</path>
<mkdir dir="${basedir}/target/classes" />
<javac destdir="${basedir}/target/classes" debug="on">
<classpath refid="cp" />
<src path="${basedir}/src/main/java/org/modeldriven/fuml/common/xsl" />
</javac>
<java failonerror="yes" fork="yes"
classname="org.modeldriven.fuml.common.xsl.XSLTUtils">
<jvmarg
value="-Djavax.xml.transform.TransformerFactory=com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl" />
<classpath refid="cp" />
<arg
value="${basedir}/target/generated-sources/java/org/modeldriven/fuml/repository/model/PrimitiveTypesAssembler.java" />
<arg
value="${basedir}/src/main/resources/org/modeldriven/fuml/repository/PrimitiveTypes.xmi" />
<arg
value="${basedir}/src/main/resources/org/modeldriven/fuml/repository/FumlModelGenerator.xsl" />
<arg
value="pkg=org.modeldriven.fuml.repository.model cls=PrimitiveTypesAssembler" />
</java>
<java failonerror="yes" fork="yes"
classname="org.modeldriven.fuml.common.xsl.XSLTUtils">
<jvmarg
value="-Djavax.xml.transform.TransformerFactory=com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl" />
<classpath refid="cp" />
<arg
value="${basedir}/target/generated-sources/java/org/modeldriven/fuml/repository/model/InfrastructureAssembler.java" />
<arg
value="${basedir}/src/main/resources/org/modeldriven/fuml/repository/Infrastructure.xmi" />
<arg
value="${basedir}/src/main/resources/org/modeldriven/fuml/repository/FumlModelGenerator.xsl" />
<arg
value="pkg=org.modeldriven.fuml.repository.model cls=InfrastructureAssembler" />
</java>
<java failonerror="yes" fork="yes"
classname="org.modeldriven.fuml.common.xsl.XSLTUtils">
<jvmarg
value="-Djavax.xml.transform.TransformerFactory=com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl" />
<classpath refid="cp" />
<arg
value="${basedir}/target/generated-sources/java/org/modeldriven/fuml/repository/model/SuperstructureAssembler.java" />
<arg
value="${basedir}/src/main/resources/org/modeldriven/fuml/repository/Superstructure.xmi" />
<arg
value="${basedir}/src/main/resources/org/modeldriven/fuml/repository/FumlModelGenerator.xsl" />
<arg
value="pkg=org.modeldriven.fuml.repository.model cls=SuperstructureAssembler" />
</java>
<java failonerror="yes" fork="yes"
classname="org.modeldriven.fuml.common.xsl.XSLTUtils">
<jvmarg
value="-Djavax.xml.transform.TransformerFactory=com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl" />
<classpath refid="cp" />
<arg
value="${basedir}/target/generated-sources/java/org/modeldriven/fuml/repository/model/fUML_SyntaxAssembler.java" />
<arg
value="${basedir}/src/main/resources/org/modeldriven/fuml/repository/fUML_Syntax.xmi" />
<arg
value="${basedir}/src/main/resources/org/modeldriven/fuml/repository/FumlModelGenerator.xsl" />
<arg
value="pkg=org.modeldriven.fuml.repository.model cls=fUML_SyntaxAssembler" />
</java>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.2</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
<execution>
<id>attach-test-sources</id>
<goals>
<goal>test-jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>${basedir}/target/generated-sources/java</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.10</version>
<configuration>
<argLine>-Dlog4j.configuration=log4j.properties</argLine>
<argLine>-Dfuml.configuration=TestFumlConfig.xml</argLine>
<!-- <argLine>-Dlog4j.configuration=log4j.properties -Xdebug -Xnoagent
-Xrunjdwp:transport=dt_socket,address=8002,server=y,suspend=y</argLine> -->
<additionalClasspathElements>
<additionalClasspathElement>${basedir}/src/main/resources</additionalClasspathElement>
<additionalClasspathElement>${basedir}/src/test/resources</additionalClasspathElement>
</additionalClasspathElements>
<forkMode>always</forkMode> <!-- always for each test class (not every test 'pertest') -->
<printSummary>true</printSummary>
<redirectTestOutputToFile>false</redirectTestOutputToFile>
<excludes>
<exclude>**/load/profile/**</exclude> <!-- these are helper classes not tests and JUnit will try to run them if
not excluded -->
<!-- <exclude>**/load/**</exclude> -->
<exclude>**/load/*MagicDrawProfile*</exclude> <!-- needs work -->
<exclude>**/builtin/*LoopNode*</exclude>
<!-- <exclude>**/model/**</exclude> -->
<!-- <exclude>**/builtin/**</exclude> -->
<!-- <exclude>**/library/**</exclude> -->
<!-- <exclude>**/validation/**</exclude> -->
</excludes>
<includes>
<include>**/model/**</include>
<include>**/load/**</include>
<include>**/builtin/**</include>
<include>**/library/**</include>
<include>**/validation/**</include>
</includes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
<version>2.18.1</version>
</plugin>
<!-- Produce ZIP with dependencies and samples. -->
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-2</version>
<executions>
<execution>
<id>assemble-zip</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
<configuration>
<descriptors>
<descriptor>maven-assembly-dist.xml</descriptor>
</descriptors>
</configuration>
</plugin>
<!-- Comment out the below GPG plugin if not set up with GPG and just
want to install local locally. -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- Release Plugin (Update version in POM before/after release, create
tag, deploy) to try: mvn release:prepare -DdryRun=true && mvn release:clean
to perform: mvn release:prepare release:perform Read http://nexus.sonatype.org/oss-repository-hosting.html#3
for instructions on releasing to this project's Sonatype repository -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.4</version>
<configuration>
<!-- During release:perform, enable the "release" profile -->
<releaseProfiles>release</releaseProfiles>
<goals>deploy assembly:single</goals>
</configuration>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings
only. It has no influence on the Maven build itself. -->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>
org.apache.maven.plugins
</groupId>
<artifactId>
maven-antrun-plugin
</artifactId>
<versionRange>[1.7,)</versionRange>
<goals>
<goal>run</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.codehaus.mojo</groupId>
<artifactId>
jaxb2-maven-plugin
</artifactId>
<versionRange>[1.4,)</versionRange>
<goals>
<goal>xjc</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.codehaus.mojo</groupId>
<artifactId>
build-helper-maven-plugin
</artifactId>
<versionRange>[1.7,)</versionRange>
<goals>
<goal>add-source</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.8.1</version>
</plugin>
</plugins>
</reporting>
<distributionManagement>
<!-- My project's Sonatype repository to be used by the release plugin -->
<repository>
<id>sonatype-nexus-staging-and-release</id>
<name>Nexus Staging Repository</name>
<!-- giving a 400 error <url>https://oss.sonatype.org/content/groups/public</url> -->
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
<snapshotRepository>
<id>sonatype-nexus-snapshot</id>
<name>Nexus Snapshot Repository</name>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>
<!--repositories> <repository> <id>ibiblio.org</id> <name>ibiblio Mirror
of http://repo1.maven.org/maven2/</name> <url>http://mirrors.ibiblio.org/pub/mirrors/maven2</url>
</repository> </repositories -->
<profiles>
<profile>
<id>release</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
|