Description
Description
I built UTBotJava-2023.10 using Java 17, after finding that both Java 8 and Java 11 resulted in build failures.
I added the UTBotJava Maven plugin to an open-source project's pom.xml
, then tried to use Maven to run the utbot:generateTestsAndSarifReport
task. The target project is still based on Java 8, so I set JAVA_HOME
to a Java 8 JDK when running Maven. The utbot:generateTestsAndSarifReport
task failed, reporting java.lang.ClassNotFoundException: kotlin.jdk7.AutoCloseableKt
. Using a Java 17 JDK when running Maven fails even earlier, as the target application does not compile under Java 17.
To Reproduce
Steps to reproduce the behavior:
-
Build UTBotJava using a Java 17 JDK. In my case, running on MacOS, I used:
JAVA_HOME=/Library/Java/JavaVirtualMachines/amazon-corretto-17.jdk/Contents/Home ./gradlew publishToMavenLocal
-
Check out nilzao/soapbox-race@5acac4da. Other revisions might exhibit the same problem, but that's the specific revision I used.
-
Modify
soapbox-race
'spom.xml
by adding the following lines to the<plugins>
section:<plugin> <groupId>org.utbot</groupId> <artifactId>utbot-maven</artifactId> <version>2023.10-SNAPSHOT</version> </plugin>
-
Using a Java 8 JDK, run Maven with the
utbot:generateTestsAndSarifReport
target:rm -rf target JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_251.jdk/Contents/Home mvn utbot:generateTestsAndSarifReport
-
Also try using the same Java 17 JDK that was used to compile UTBotJava:
rm -rf target JAVA_HOME=/Library/Java/JavaVirtualMachines/amazon-corretto-17.jdk/Contents/Home mvn utbot:generateTestsAndSarifReport
Expected behavior
Tests and a SARIF report should be generated.
Actual behavior
When running Maven using Java 8, failure due to java.lang.ClassNotFoundException: kotlin.jdk7.AutoCloseableKt
.
When running Maven using Java 17, failure to compile the target application.
Visual proofs (screenshots, logs, images)
Environment
- Java 8 and/or Java 17 JDKs as mentioned above
- MacOS Ventura 13.4.1
- nilzao/soapbox-race@5acac4da as the target application and Git commit hash for which tests should be generated
- Apache Maven 3.9.4 (dfbb324ad4a7c8fb0bf182e6d91b0ae20e3d2dd9)
Metadata
Metadata
Assignees
Labels
Type
Projects
Status