3

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

我尝试添加maven-compiler-plugin并设置为 1.8 sourcetarget但这不起作用,大概是因为scala-maven-plugin正在处理编译而不是maven-compiler-plugin.

这可能吗?

4

1 回答 1

2

您可以使用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>
于 2015-05-31T11:18:42.850 回答