Требуется Java 8 для сборки проекта Scala с использованием Maven

Я использую scala-maven-plugin построить проект Scala, используя Maven. Мой проект зависит от некоторых библиотек из Java 8. Я хотел бы указать в моем pom, что проект требует Java 8 (используя что-то вроде -target=jdk-1.8(который, кажется, не существует), так что он потерпит неудачу немного более элегантно / информативно, когда кто-то попытается скомпилировать с использованием версии Java < 8.

Я пытался добавить maven-compiler-plugin с source а также target установить на 1,8, и это не сработало, вероятно, потому что scala-maven-plugin обрабатывает компиляцию вместо maven-compiler-plugin,

Это возможно?

1 ответ

Решение

Вы можете использовать плагин Maven Enforcer, чтобы обеспечить соблюдение некоторых правил при запуске сборки 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>
Другие вопросы по тегам