thx, that makes more clear but i was still a bit confused by this:
Unlink compiler levels from execution environemnt
The compilation levels are derived from explicit sources like Bundle-RequiredExecutionEnvironment or related settings in build.properties or pom.xml, and are not affected any more by the execution environment that is used to resolve dependencies. So you can set executionEnvironment to JavaSE-11, have a bundle with BREE=JavaSE-1.8, and Java 1.8 will be used as compile source/target level without extra configuration.
so the dependencies are resolved by the executionEnvironment and then it makes sure it compiles with the same source/target as you specified (i checked this and yes class files have the correct major version)
So what would be the jdk library that it compiles against..
But i tried it, on purpose i used String.strip() and yes that still bombs out when compiling.