Moxie does not use Maven's pom.xml nor Ivy's ixy.xml to describe your project. Moxie uses the build.moxie project descriptor. This file employs a key:value format which is very similar to YAML.
groupId: 'org.example' artifactId: 'demo' version: '1.2.3-SNAPSHOT'minimal Moxie project descriptor
build.moxie descriptor.
build.moxie descriptor please review the build.moxie documentation.
# string quoting is optional.
# it is used here to improve syntax highlighting
name: 'Example 1'
description: 'A better example'
groupId: 'org.example'
artifactId: 'demo'
version: '1.2.3-SNAPSHOT'
organization: 'Example Writers'
url: 'http://demo.example.org'
apply: 'eclipse', 'intellij', 'pom'
sourceDirectories:
- compile 'src/main/java'
- test 'src/test/java'
resourceDirectories:
- compile 'src/main/resources'
- test 'src/test/resources'
properties: {
clang.version : 3.1
}
dependencies:
- compile 'org.apache.commons:commons-lang3:${clang.version}'
- test 'junit'
- build 'jacoco'
a more elaborate Moxie project descriptor
build.moxie descriptor.
<?xml version="1.0" encoding="UTF-8"?>
<project default="main" xmlns:mx="antlib:org.moxie">
<!-- Moxie tasks -->
<taskdef uri="antlib:org.moxie">
<classpath location="${basedir}/moxie.jar" />
</taskdef>
<target name="main">
<!-- Setup Ant build properties, resolve, & retrieve dependencies -->
<mx:init />
<!-- Compile your project -->
<mx:javac />
<!-- Compile your unit tests and execute them -->
<mx:test />
<!-- Generate class and source jars of your project -->
<mx:package />
<!-- Install your generated artifacts to your local Moxie cache -->
<mx:install />
</target>
</project>