-
Notifications
You must be signed in to change notification settings - Fork 28.5k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
[SPARK-28765][BUILD] Add explict exclusions to avoid JDK11 dependency issue #25481
Conversation
… generation issues
cc @srowen , @HyukjinKwon , @wangyum . |
Test build #109260 has finished for PR 25481 at commit
|
Is it safe? <profile>
<id>jdk11+</id>
<activation>
<jdk>[11,)</jdk>
</activation>
<dependencies>
<dependency>
<groupId>jakarta.xml.bind</groupId>
<artifactId>jakarta.xml.bind-api</artifactId>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-osgi</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</profile> https://github.com/eclipse-ee4j/jersey/blob/2.29/core-server/pom.xml#L229-L245 |
Oh, thank you for the pointer, @wangyum . I only checked only https://mvnrepository.com/artifact/org.glassfish.jersey.core/jersey-server/2.29 before. I'll take a look at that. |
I think it's generally fine if the tests we run pass though. |
If we don't use that, yes it is. For now, it seems that this situation is designed like this. In worst case, it seems that we end up with having manifest per JDK. And, pre-built artifacts per JDK How do you think about this situation? @srowen ? |
For now, I'll close this PR. Thank you for review, @HyukjinKwon and @wangyum . |
Given the test, this PR still looks good to me. |
Test build #109277 has finished for PR 25481 at commit
|
Test build #109276 has finished for PR 25481 at commit
|
Well the other solution is to explicitly include these additional libraries as a This approach is also OK if they really aren't used given how Jersey is used in Spark, but do we know that? Java 9 kicked out the JAXB libraries from the JDK, so it's possible they are there on purpose. The Java 8 PR builder here passes of course. If it has been manually checked against JDK 11 and tests work, I'm OK with it. We'd know soon if it doesn't, assuming the JDK 11 Jenkins job is in operation. If it fails I think we'd fall back to the other approach above. Anyway, I'm OK with it if there's any evidence it works on JDK 11, otherwise, might suggest adding the dependencies instead. |
It was tested against JDK 11 at #25443 (comment) but yes explicitly including sounds fine to me too |
I'm OK with it then. |
Then, thank you, @srowen , @HyukjinKwon , @wangyum . |
What changes were proposed in this pull request?
This PR adds explicit exclusions to avoid Maven
JDK11
dependency issues.Why are the changes needed?
Maven/Ivy seems to be confused during dependency generation on
JDK11
environment.This is not only wrong, but also causes a Jenkins failure during dependency manifest check on
JDK11
environment.JDK8
JDK11
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Do the following in both
JDK8
andJDK11
environment. The dependency manifest should not be changed. In the currentmaster
branch,JDK11
changes the dependency manifest.