plugins: add ant plugin
Metadata
Current evaluation
Merged the ant plugin. It builds Java projects using the ant tool, requiring jdk and jre dependencies. Outputs a bin/java symlink and jar directory. Review approved, assertion notation fixed, and remaining improvements tracked in follow-up ticket CRAFT-1526.
Suggested action: —
No scores available.
Issue body
The plugin requires the ``ant`` tool installed on the system. This can be achieved by adding the appropriate declarations to ``build-packages`` or ``build-snaps``, or by having it installed or built in a different part. In this case, the name of the part supplying ``ant`` must be "ant-deps".
Additionally, Java projects need a dev kit (jdk) to build and a runtime environment (jre) to run. There are multiple choices here, but frequently adding ``default-jdk-headless`` to ``build-packages`` and ``default-jre-headless`` to ``stage-packages`` is enough.
Once built, the plugin will create the following structure in the part's install dir (which will later be staged/primed/packaged):
- A ``bin/java`` symlink pointing to the actual ``java`` binary provided by the jre;
- A ``jar/`` directory containing the .jar files generated by the build.
- [ ] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
-----
CRAFT-1464
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged the ant plugin. It builds Java projects using the ant tool, requiring jdk and jre dependencies. Outputs a bin/java symlink and jar directory. Review approved, assertion notation fixed, and remaining improvements tracked in follow-up ticket CRAFT-1526. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Added an Ant plugin for Java projects. Merged after addressing review feedback. Requires ant, JDK, and JRE, producing a bin/java symlink and jar directory. Remaining improvements tracked in CRAFT-1526. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #339 plugins: add base class for java-related plugins | craft-parts | merged | Merged changes adding a shared base class for Java-related plugins to support the Ant plugin and upcoming Maven build. Approved by one reviewer, passed CI, and modified three files with 44 additions and 35 deletions. | |
| #2597 ant plugin: switch to using ant snap for building (by default) | snapcraft | merged | Merged. Switches the ant plugin to use the ant snap for building by default, allowing an alternative ant-version with a checksum. Approved by reviewer, passed CI, rebased, and merged with 155 additions and 23 deletions across two files. |