问题
I use Maven 3 to create a new Scala project. As far as I understand, the way to create a new project with Maven is by:
mvn archetype:generate
Maybe I'm missing out something, but I couldn't find even one option that offers the simplest Scala project (like the one received by lein new app ...
for Clojure, for example). Any help here?
回答1:
You should be able to use mvn archetype:generate
. You can choose, e.g., org.scala-tools.archetypes:scala-archetype-simple
. You need to put in the number number next to the archetype name in the output of your mvn archetype:generate
command because the numbering can change over time. There are also other options like eu.stratosphere:quickstart-scala
as documented in this article.
They may be somewhat outdated, though. I personally prefer writing my pom.xml
files manually. For reference, here is a minimal pom file for use with Scala 2.11.6 and Scalatest 2.2.5:
<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>com.example</groupId>
<artifactId>my-artifact</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<encoding>UTF-8</encoding>
<scala.version>2.11.6</scala.version>
</properties>
<dependencies>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>${scala.version}</version>
</dependency>
<dependency>
<groupId>org.scalatest</groupId>
<artifactId>scalatest_2.11</artifactId>
<version>2.2.5</version>
<scope>compile</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.scala-tools</groupId>
<artifactId>maven-scala-plugin</artifactId>
<version>2.15.2</version>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>testCompile</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.scalatest</groupId>
<artifactId>scalatest-maven-plugin</artifactId>
<version>1.0</version>
<configuration>
</configuration>
<executions>
<execution>
<id>test</id>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
来源:https://stackoverflow.com/questions/37047186/creating-the-most-basic-scala-project-with-maven