Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

`ExecutorTool` resolves a non-ASF plugin into the test local repository

オープン
#44 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
35/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
java
領域
build-system

調査の方向性

Read maven-executor/src/main/java/org/apache/maven/executor/support/ToolboxExecutorTool.java and the README first. Trace the existing localRepository(), artifactPath(), metadataPath(), and dump() behavior, then compare the path logic described for maven-verifier. Done means a non-plugin path implementation is available, Toolbox remains opt-in and documented, and the dependency/runtime wording is consistent.

索引モデルが issue の本文から書いたものです。

説明

documentation enhancement
New feature, improvement proposal

The README describes maven-executor as dependency-less, and the POM agrees: the jar has no compile-scope dependencies. The only shipped ExecutorTool implementation does not, though. ToolboxExecutorTool answers localRepository(), artifactPath(), metadataPath(), and dump() by running eu.maveniverse.maven.plugins:toolbox:VERSION:gav-* through the Maven under test (ToolboxExecutorTool.java:45,134). Every consumer that needs an artifact path therefore fetches a plugin from a non-ASF group at test time, and the plugin and its transitive dependencies land in the local repository that the tests run against.

This matters for the projects that MIGRATION.md in maven-verifier tells to move here. maven-verifier computes those paths locally, and its integration tests assert on local-repository content: in maven-integration-testing alone deleteArtifacts is called 302 times and verifyArtifactPresent 84 times. After migration each of those calls depends on:

  • network access to Maven Central for a plugin outside the ASF, which offline and air-gapped CI cannot provide;
  • the toolbox artifacts appearing in the local repository under test, which changes what "artifact not present" assertions see;
  • a pinned third-party version (0.15.8 in the deprecated constructor, version.toolbox in the POM) that ASF release policy does not cover.

The maven-it-helper Verifier in apache/maven already carries this: it wires ToolboxExecutorTool at construction and reads version.toolbox from a system property, so the core ITs cannot run without the plugin.

Proposal:

  1. Provide an ExecutorTool implementation that computes local-repository, artifact, and metadata paths without executing a plugin. dump() needs Maven, but the three path methods only need the effective local repository and the standard layout, which maven-verifier has implemented for years and which Maven 3.9 and 4 share.
  2. Keep ToolboxExecutorTool as an opt-in for dump() and for anyone who wants the toolbox, and state in the README and Javadoc that it downloads and runs a third-party plugin.
  3. Change the README wording from "dependency-less" to describe the runtime requirement, or keep the wording once step 1 makes it true for the default path.

Context: apache/maven-verifier#186.

主要言語
Java
スター
5
フォーク
2
平均マージ
4時間 22分
マージ済み PR(30日)
2

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

apache/maven-executor のほかの issue

apache/maven-executor の issue をすべて見る

似ている issue

Java の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。