Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/402.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Travis Java构建使用不同的SDK进行编译和测试_Java_Travis Ci - Fatal编程技术网

Travis Java构建使用不同的SDK进行编译和测试

Travis Java构建使用不同的SDK进行编译和测试,java,travis-ci,Java,Travis Ci,我有一个使用Java8类的库,如果它们可用,并且对于较旧的JRE版本提供了一个回退实现。这意味着我必须使用Java8(或更高版本)进行编译,但我希望使用JDK7执行测试以测试回退。我不知道如何在Travis中实现它。最简单的方法是在pom.xml中为Travis创建特殊的Maven配置文件 <profile> <id>travis</id> <build> <plugins>

我有一个使用Java8类的库,如果它们可用,并且对于较旧的JRE版本提供了一个回退实现。这意味着我必须使用Java8(或更高版本)进行编译,但我希望使用JDK7执行测试以测试回退。我不知道如何在Travis中实现它。

最简单的方法是在pom.xml中为Travis创建特殊的Maven配置文件

   <profile>
      <id>travis</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.7.0</version>
            <configuration>
              <verbose>true</verbose>
              <fork>true</fork>
              <executable>/usr/lib/jvm/java-8-oracle/bin/javac</executable>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>   

我猜你已经在使用构建矩阵了?如果是这样,你会发布你的矩阵配置吗?ThxIt似乎答案就在这里,现在我只需要找到通往Java8JDKyeah的路径,但另外,您仍然需要
jdkswitcher
。在任何情况下,您都可以将jdk(或所需jdk版本)的路径存储在特定于每个构建矩阵元素的环境变量中。这就是为什么我要求您提供构建矩阵配置(如果您有)。
script: mvn install -P travis