要求Java 8使用Maven

时间:2015-05-30 16:15:21

标签: scala maven java-8 scala-maven-plugin

我使用scala-maven-plugin使用Maven构建Scala项目。我的项目依赖于Java 8中的一些库。我想在我的pom中指定该项目需要Java 8(使用类似于-target=jdk-1.8的东西,似乎不存在),以便它会更优雅地失败/当有人试图使用Java版本进行编译时,提供信息< 8.目前它无法找到我尝试导入的软件包。

我尝试添加maven-compiler-pluginsourcetarget设置为1.8,这没有用,大概是因为scala-maven-plugin正在处理编译而不是{{ 1}}。

这可能吗?

1 个答案:

答案 0 :(得分:1)

您可以使用Maven Enforcer Plugin强制执行一些在运行Maven构建时声明的规则。

在这里,您要确保使用的Java版本至少为8。您可以通过在pom.xml文件中添加以下内容来实现此目的:

<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-enforcer-plugin</artifactId>
      <version>1.4</version>
      <executions>
        <execution>
          <id>enforce-java</id>
          <goals>
            <goal>enforce</goal>
          </goals>
          <configuration>
            <rules>
              <requireJavaVersion>
                <version>[1.8,)</version>
              </requireJavaVersion>
            </rules>    
          </configuration>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>