Revert "Update ant to v1.10.16"#26606
Merged
timja merged 1 commit intoApr 10, 2026
Merged
Conversation
…6566)" The Apache Ant 1.10.17 What's New document describes the bug as: https://github.com/apache/ant/blob/4198028c333ea163ac67e58a0e63f31d0475a214/WHATSNEW#L7 > The JavaEnvUtils and FileUtils classes statically depend on each other > since Ant 1.10.16 making it impossible to load JavaEnvUtils without > loading FileUtils first causing NullPointerException for programmatic > use on Windows. This affected Eclipse and may also affect other projects > using Ant as a library. Automated tests on ci.jenkins.io Windows agents have been failing since 3 Apr 2026. The failures report a stack trace: Caused by: java.lang.NullPointerException: Cannot invoke "org.apache.tools.ant.util.DeweyDecimal.compareTo(org.apache.tools.ant.util.DeweyDecimal)" because "org.apache.tools.ant.util.JavaEnvUtils.parsedJavaVersion" is null at org.apache.tools.ant.util.JavaEnvUtils.isAtLeastJavaVersion(JavaEnvUtils.java:301) at org.apache.tools.ant.util.FileUtils.<clinit>(FileUtils.java:94) The failure seems to only happen on Windows because the Ant source code added additional logic for Windows junctions in commit: * apache/ant@45b84bb#diff-fdf66b5ecb8a9eb6a9d4e8bb1bc95ce8fc8872c5664fa7e5d899b3dc31af2891R91 This reverts commit d8ce08e. Testing done: * Confirmed that I can duplicate the problem on my Windows computers with the commands: `mvn -am -pl war,bom -Pquick-build clean install` `mvn -pl test -Dtest=hudson.slaves.JNLPLauncherRealTest test` * Confirmed that reverting this pull request fixes the issue
Contributor
There was a problem hiding this comment.
Pull request overview
Reverts the Jenkins BOM-managed Apache Ant dependency from 1.10.16 back to 1.10.15 to avoid a Windows-specific NullPointerException regression affecting programmatic Ant usage (observed in Jenkins CI Windows agents).
Changes:
- Downgrade
org.apache.ant:antfrom1.10.16to1.10.15in the BOM to restore Windows test stability.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
StefanSpieker
approved these changes
Apr 10, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Revert "Update ant to v1.10.16"
Fix a Windows bug introduced by the update to Apache Ant 1.10.16. The unreleased Apache Ant 1.10.17 What's New describes bug 69992 as:
The Eclipse project discusses it in detail in eclipse-platform/eclipse.platform#2605 (comment)
Automated tests on ci.jenkins.io Windows agents have been failing since 3 Apr 2026. The failures report a stack trace:
The failure only happens on Windows because the Ant source code added additional logic for Windows junctions in commit:
This reverts commit d8ce08e from pull request:
This is another case where the subset of tests run on Windows missed a test failure. It is even more surprising that the Windows test selection process did not identify that the failing tests should be run in all pull requests after the initial failure on the master branch. Probably needs further discussion with the predictive test selection experts at CloudBees. @daniel-beck you are not alone.
This is also a case where the acceptance test harness and the plugin BOM did not catch the issue, because they do not run on Windows. This type of platform specific bug happens so infrequently that I don't think it is worth the expense to run those tests on Windows.
Testing done
mvn -am -pl war,bom -Pquick-build clean installmvn -pl test -Dtest=hudson.slaves.JNLPLauncherRealTest testI was unable to duplicate the issue from a Windows controller using websocket connected agents from a Windows computer or from two different Linux computers. Likewise I was unable to duplicate the issue from a Windows controller with a Linux agent that connected without using websocket. I suspect there is a user visible bug in Jenkins 2.558 due to this issue, but I was unable to find it.
Screenshots (UI changes only)
Before
After
Proposed changelog entries
Proposed changelog category
/label bug
Proposed upgrade guidelines
N/A
Submitter checklist
@Restrictedor have@since TODOJavadocs, as appropriate.@Deprecated(since = "TODO")or@Deprecated(forRemoval = true, since = "TODO"), if applicable.evalto ease future introduction of Content Security Policy (CSP) directives (see documentation).Desired reviewers
@jenkinsci/core-pr-reviewers I'd appreciate a review of this pull request so that the regression is fixed in the next weekly release.
Maintainer checklist
upgrade-guide-neededlabel is set and there is a Proposed upgrade guidelines section in the pull request title (see example).lts-candidateto be considered.