mirror of
https://github.com/github/codeql.git
synced 2025-12-16 08:43:11 +01:00
Java: Add test for selecting the highest compiler release in a pom
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<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/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<groupId>com.example</groupId>
|
||||
<artifactId>maven-execution-specific-java-version</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
|
||||
<name>maven-execution-specific-java-version</name>
|
||||
<description>Test case: Project with execution-specific Java versions (Java 11 for main, Java 17 for test). Maven.java should detect the highest version (17) and use it for compilation.</description>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
</properties>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>3.13.0</version>
|
||||
<executions>
|
||||
<!-- Compilation for src/main/java -->
|
||||
<execution>
|
||||
<id>default-compile</id>
|
||||
<phase>compile</phase>
|
||||
<goals>
|
||||
<goal>compile</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<release>11</release> <!-- Java 11 for main -->
|
||||
</configuration>
|
||||
</execution>
|
||||
|
||||
<!-- Compilation for src/test/java -->
|
||||
<execution>
|
||||
<id>default-testCompile</id>
|
||||
<phase>test-compile</phase>
|
||||
<goals>
|
||||
<goal>testCompile</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<release>17</release> <!-- Java 17 for test -->
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
@@ -0,0 +1,4 @@
|
||||
pom.xml
|
||||
src/main/java/com/example/App.java
|
||||
src/test/java/com/example/AppTest.java
|
||||
target/maven-archiver/pom.properties
|
||||
@@ -0,0 +1,12 @@
|
||||
package com.example;
|
||||
|
||||
public class App {
|
||||
public static void main(String[] args) {
|
||||
var message = "Hello World! Running on Java " + System.getProperty("java.version");
|
||||
System.out.println(message);
|
||||
}
|
||||
|
||||
public String getMessage() {
|
||||
return "Hello from App";
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
package com.example;
|
||||
|
||||
public class AppTest {
|
||||
public static void main(String[] args) {
|
||||
var text = """
|
||||
Hello
|
||||
World
|
||||
""";
|
||||
System.out.println(text.strip());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
def test(codeql, java):
|
||||
codeql.database.create()
|
||||
Reference in New Issue
Block a user