Compatibility of JBehave and Cucumber with Java 11 - cucumber

I am successfully using Java 8 with JBehave. Now I would like to switch to Java 11, but find no information about the JBehave compatibility.
Using Cucumber instead would also be possible, but here I only found news from 2/2019 saying that Cucumber is only partially compatible.
Does anybody have experiences with Java 11 and one of these BDD tools?

JBehave 4.5.1 is fully compatible with Java 11.
I've successfully been using latest JBehave versions with Java 9, 10, 11. No Java-specific issues are found.

Related

Cucumber, Java17: allowing step definition with lambda expression cucumber 7.1.1

Trying to update the project with Java 17. It doesn't support cucumber-java8. If I try to upgrade cucumber- java to higher version like 7.1.1. I don't find that it allows step definition as lambda expression.
I tried few lower versions but it doesn't allow this feature above jdk 12

weblogic version which compatibility with log4j 2.17.1

what would be the compatible weblogic versions for the log-2.17.1. any Reference link is useful.
part of my research nowhere i found related solutions in the official sites
It would be more the java version that weblogic runs on. If it supports java 8 then you would be able to use log4j 2.17.1. I think weblogic 12.1.3 onwards supports java 8.

Does Groovy 2.5 support Java 13?

I'm trying to understand if Apache Groovy 2.5 (latest stable release) supports Java 13. As per System Requirements page it should be fine to use any JDK 1.7+.
However when I try to compile my Spock tests with Gradle 6 on Java 13 I get the following error:
Caused by: BUG! exception in phase 'semantic analysis'
in source unit '/home/myself/project/Test.groovy'
Unsupported class file major version 57
Could it be due to GROOVY-9020 or is Apache Groovy 2.5 not officially supporting Java 13?
Updating to Groovy 2.5.7 or newer solves the problem. In my case transitive Spock dependencies used an older version of Groovy.
The root cause was ASM library which was reported in GROOVY-9020 and GROOVY-9055 and fixed in upgraded ASM to 7.1, added Java 13 to CompilerConfiguration #887 pull request.
Reported the issue under Update Spock 1.3-groovy-2.5 to support Java 13 #1051.

Is IBM Maximo 7.6 businessobject jar compiled in Java 1.8 compatible to run in java 1.7?

I have got jar compiled in java 1.8 from maximo dir and on my machine i have java 1.7 installed do i need to update my machine java before i run this jar. I can not run it before knowing this since it will get recorded in some logs and will update some server side files.
This is more of a Java question than a Maximo question, but no, it will not. You will get an "Unsupported major.minor version 52.0" if you do. This is not because of any features issue, this is simply because the bytecode is tagged as being from Java 8 and so earlier JREs will not run it.
Now this assumes you actually compiled the class files using Java 8, which probably only happened if you have custom code in there. If you are just using the out-of-the-box Maximo classes, those came pre-compiled (in I don't recall which version of Java) and so all you might have done was to bundle them into a jar, or more likely into the Maximo ear (since you don't run the businessobjects.jar). In that case, it doesn't matter what version of Java you used to created the jar/ear, it will run on any version of Java that is the same as or higher than whatever version IBM used to compile the code into classes.

In Android Studio how can I configure my project to use Java 8

I recently started development with Android Studio 1.1.0 (bundle 135.1740770 for Windows) having JDK version "1.8.0_40" installed (64 Bit).
So far everything works fine, except I cannot import classes added with Java 8. I recognized it when trying to import java.util.Optional, but it's the same with e.g. java.util.stream.
May it be the case that my project somehow only uses a Java 7 subset of my JDK's standard library? And is it possible (recommended) to change that? I looked for a java version param in properties files, manifest and IDE settings. Didn't find anything like that.. anyone experienced something like that?
Btw. following the first comment in Is it possible to use Java 8 for Android development? it should be possible basically, but it seems to only cover Eclipse..
If you read further down in your linked comments, you will find the solution:
You may use JDK 6 or above for Android development. However, the compilation supports Java version 6 (and 7 in case of KitKat).
So yes, you may use JDK 8 for development, but you need to set the language level to JDK 6 or JDK 7. You cannot use any features that were added to JDK 8. To set the language level in Android Studio, go to:
File > Project Structure > Project > Select Project language level

Resources