Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sample applications build fails with versions older than Java 17. #190

Open
mirai-jeff opened this issue Jul 31, 2023 · 2 comments
Open

Comments

@mirai-jeff
Copy link

Hello.

The README in this repository instructs you to run gradlew in the top directory when building the sample application. However, some sample applications do not support Java 8 or Java 11, and attempting to build with, for example, Java 8 will result in the following error:

Build with Amazon Linux 2 and OpenJDK java-1.8.0-openjdk-1.8.0.372.b07-1.amzn2.0.1.x86_64

# ./gradlew bootJar

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring root project 'opentelemetry-java-examples'.
> Could not resolve all files for configuration ':classpath'.
   > Could not resolve com.diffplug.spotless:spotless-plugin-gradle:6.20.0.
     Required by:
         project : > com.diffplug.spotless:com.diffplug.spotless.gradle.plugin:6.20.0
      > No matching variant of com.diffplug.spotless:spotless-plugin-gradle:6.20.0 was found. The consumer was configured to find a library for use during runtime, compatible with Java 8, packaged as a jar, and its dependencies declared externally, as well as attribute 'org.gradle.plugin.api-version' with value '8.2.1' but:
          - Variant 'apiElements' capability com.diffplug.spotless:spotless-plugin-gradle:6.20.0 declares a library, packaged as a jar, and its dependencies declared externally:
              - Incompatible because this component declares a component for use during compile-time, compatible with Java 11 and the consumer needed a component for use during runtime, compatible with Java 8
              - Other compatible attribute:
                  - Doesn't say anything about org.gradle.plugin.api-version (required '8.2.1')
          - Variant 'javadocElements' capability com.diffplug.spotless:spotless-plugin-gradle:6.20.0 declares a component for use during runtime, and its dependencies declared externally:
              - Incompatible because this component declares documentation and the consumer needed a library
              - Other compatible attributes:
                  - Doesn't say anything about its target Java version (required compatibility with Java 8)
                  - Doesn't say anything about its elements (required them packaged as a jar)
                  - Doesn't say anything about org.gradle.plugin.api-version (required '8.2.1')
          - Variant 'runtimeElements' capability com.diffplug.spotless:spotless-plugin-gradle:6.20.0 declares a library for use during runtime, packaged as a jar, and its dependencies declared externally:
              - Incompatible because this component declares a component, compatible with Java 11 and the consumer needed a component, compatible with Java 8
              - Other compatible attribute:
                  - Doesn't say anything about org.gradle.plugin.api-version (required '8.2.1')
          - Variant 'sourcesElements' capability com.diffplug.spotless:spotless-plugin-gradle:6.20.0 declares a component for use during runtime, and its dependencies declared externally:
              - Incompatible because this component declares documentation and the consumer needed a library
              - Other compatible attributes:
                  - Doesn't say anything about its target Java version (required compatibility with Java 8)
                  - Doesn't say anything about its elements (required them packaged as a jar)
                  - Doesn't say anything about org.gradle.plugin.api-version (required '8.2.1')

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Get more help at https://help.gradle.org.

BUILD FAILED in 1s

In conclusion, building with Java 17 will not pose any problems, but it would be desirable to either update the README for each sample application or make adjustments so that individual applications can be built.

Thank you.

@mateuszrzeszutek
Copy link
Member

Hey @mirai-jeff ,

In conclusion, building with Java 17 will not pose any problems, but it would be desirable to either update the README for each sample application or make adjustments so that individual applications can be built.

Most of the submodules already have READMEs that list the minimum Java version required; I 100% agree that all of them should do that.
The main repo README does not mention gradle; and I don't think that there's anything we could do to make them all of the projects run from the top-level directory on any Java version.

@systems1
Copy link

many readme have java1.8 but im not getting these working with java 13 java 21 ,devs should update readme with their environment dependancies

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants