2.2. Generate a basic jar file from the Kermeta project

TODO

The generated pom.xml will look like the following :

<!-- Generated pom.xml, feel free to adapt it to your needs -->
<!-- The original goal of this generated pom.xml is to provide a mean to 
	have a simple jar exporter. It supposes that your kermeta project correctly 
	build using the eclipse interface.The eclipse interface is in charge of building 
	all the classes. This pom is used only to create a jar from these classes 
	or to run the kermeta application as a standalone java application. For more 
	complex scenario, please consider the other pom.xml generators or assemble 
	your own. -->
<!-- Usage : from a working eclipse kermeta project -->
<!-- "mvn package" will build a standalone jar -->
<!-- "mvn run" run the standalone jar -->
<!-- Please note that you may have to manually add some dependencies. (for 
	example if your project is built by assembling several other project/jar) -->
<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/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>hello</groupId>
	<artifactId>hello</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>jar</packaging>

	<name>hello</name>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
	</properties>

	<build>
		<resources>
			<resource>
				<directory>${project.build.directory}/scalaclasses</directory>
			</resource>
			<resource>
				<directory>${project.build.directory}/emfclasses</directory>
			</resource>
		</resources>
		<plugins>
			<plugin>
				<groupId>org.scala-tools</groupId>
				<artifactId>maven-scala-plugin</artifactId>
				<executions>
					<execution>
						<goals>
							<goal>compile</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<launchers>
						<launcher>
							<id>runner.MainRunner</id>
							<mainClass>runner.MainRunner</mainClass>
						</launcher>
					</launchers>
					<jvmArgs>
						<jvmArg>-Xmx1024m</jvmArg>
					</jvmArgs>
				</configuration>
			</plugin>


			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-dependency-plugin</artifactId>
				<version>2.7</version>
				<executions>
					<execution>
						<id>copy-dependencies</id>
						<phase>package</phase>
						<goals>
							<goal>copy-dependencies</goal>
						</goals>
						<configuration>
							<outputDirectory>${project.build.directory}/dependencies</outputDirectory>
							<overWriteReleases>false</overWriteReleases>
							<overWriteSnapshots>false</overWriteSnapshots>
							<overWriteIfNewer>true</overWriteIfNewer>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.apache.felix</groupId>
				<artifactId>maven-bundle-plugin</artifactId>				
				<version>2.3.7</version>
				<extensions>true</extensions>
				<configuration>
					<instructions>
						<Private-Package>*</Private-Package>
						<BundleClassPath>.</BundleClassPath>
					</instructions>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>truezip-maven-plugin</artifactId>
				<version>1.0-beta-4</version>
				<executions>
					<execution>
						<id>remove-a-file</id>
						<phase>package</phase>
						<goals>
							<goal>remove</goal>
						</goals>
						<configuration>
							<fileset>
								<directory>target/${project.artifactId}-${project.version}.jar/META-INF</directory>
								<includes>
									<include>**/*.RSA</include>
									<include>**/*.SF</include>
								</includes>
							</fileset>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>
	<repositories>
		<repository>
			<id>Inria Public</id>
			<url>http://maven.irisa.fr/artifactory/public/</url>
		</repository>		
		<repository>
			<id>Scala-tools Maven2 Repository</id>
			<url>http://scala-tools.org/repo-releases</url>
		</repository>
	</repositories>
	<pluginRepositories>
		<pluginRepository>
			<id>scala-tools.org</id>
			<url>http://maven.irisa.fr/artifactory/public-release/</url>
		</pluginRepository>
	</pluginRepositories>
	<dependencies>
		<dependency>
			<groupId>org.scala-lang</groupId>
			<artifactId>scala-library</artifactId>
			<version>2.9.3</version>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.kermeta.language</groupId>
			<artifactId>org.kermeta.language.model</artifactId>
			<version>2.0.99-SNAPSHOT</version>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.kermeta.emf</groupId>
			<artifactId>emf.lib</artifactId>
			<version>2.7.0</version>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.kermeta.emf</groupId>
			<artifactId>emf.lib.patched</artifactId>
			<version>2.7.0</version>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.kermeta.language</groupId>
			<artifactId>org.kermeta.language.library.core</artifactId>
			<version>2.0.99-SNAPSHOT</version>
			<scope>compile</scope>
		</dependency>
		<!-- can be replaced by  org.kermeta.language.library.standard if you do only an importProject "library.standard" -->
		<dependency>
			<groupId>org.kermeta.language</groupId>
			<artifactId>org.kermeta.language.library.standard</artifactId>
			<version>2.0.99-SNAPSHOT</version>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.kermeta.utils</groupId>
			<artifactId>utils.helpers</artifactId>
			<version>2.0.99-SNAPSHOT</version>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.kermeta.utils</groupId>
			<artifactId>utils.systemservices.api</artifactId>
			<version>2.0.99-SNAPSHOT</version>
			<scope>compile</scope>
		</dependency>

		<!-- Add more dependencies here -->
	</dependencies>
</project>