diff --git a/start-site/src/main/java/io/spring/start/site/extension/dependency/picocli/PicocliCodegenBuildCustomizer.java b/start-site/src/main/java/io/spring/start/site/extension/dependency/picocli/PicocliCodegenBuildCustomizer.java
deleted file mode 100644
index 9054e13ba6..0000000000
--- a/start-site/src/main/java/io/spring/start/site/extension/dependency/picocli/PicocliCodegenBuildCustomizer.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright 2012-2023 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.spring.start.site.extension.dependency.picocli;
-
-import io.spring.initializr.generator.buildsystem.Build;
-import io.spring.initializr.generator.buildsystem.Dependency;
-import io.spring.initializr.generator.buildsystem.DependencyScope;
-import io.spring.initializr.generator.spring.build.BuildCustomizer;
-import io.spring.initializr.generator.version.VersionReference;
-
-/**
- * A {@link BuildCustomizer} that automatically adds "picocli-codegen" when the
- * {@code native} dependency is selected in addition to {@code picocli}.
- *
- * This annotation processor is required by Picocli to generate the reachability metadata
- * for native applications.
- *
- * @author Brian Clozel
- */
-class PicocliCodegenBuildCustomizer implements BuildCustomizer {
-
- @Override
- public void customize(Build build) {
- if (build.dependencies().has("native")) {
- VersionReference picocliVersion = build.dependencies().get("picocli").getVersion();
- Dependency picocliCodegen = Dependency.withCoordinates("info.picocli", "picocli-codegen")
- .scope(DependencyScope.ANNOTATION_PROCESSOR)
- .version(picocliVersion)
- .build();
- build.dependencies().add("picocli-codegen", picocliCodegen);
- }
- }
-
-}
diff --git a/start-site/src/main/java/io/spring/start/site/extension/dependency/picocli/PicocliProjectGenerationConfiguration.java b/start-site/src/main/java/io/spring/start/site/extension/dependency/picocli/PicocliProjectGenerationConfiguration.java
deleted file mode 100644
index 20a66a86d8..0000000000
--- a/start-site/src/main/java/io/spring/start/site/extension/dependency/picocli/PicocliProjectGenerationConfiguration.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright 2012-2022 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.spring.start.site.extension.dependency.picocli;
-
-import io.spring.initializr.generator.condition.ConditionalOnPlatformVersion;
-import io.spring.initializr.generator.condition.ConditionalOnRequestedDependency;
-import io.spring.initializr.generator.project.ProjectGenerationConfiguration;
-
-import org.springframework.context.annotation.Bean;
-
-/**
- * Configuration for generation of projects that use observability.
- *
- * @author Brian Clozel
- */
-@ProjectGenerationConfiguration
-@ConditionalOnRequestedDependency("picocli")
-@ConditionalOnPlatformVersion("3.0.0-M1")
-public class PicocliProjectGenerationConfiguration {
-
- @Bean
- PicocliCodegenBuildCustomizer picocliCodegenBuildCustomizer() {
- return new PicocliCodegenBuildCustomizer();
- }
-
-}
diff --git a/start-site/src/main/java/io/spring/start/site/extension/dependency/picocli/package-info.java b/start-site/src/main/java/io/spring/start/site/extension/dependency/picocli/package-info.java
deleted file mode 100644
index eb88fcb9a9..0000000000
--- a/start-site/src/main/java/io/spring/start/site/extension/dependency/picocli/package-info.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- * Copyright 2012-2022 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/**
- * Extensions for generation of projects that depend on Picocli.
- */
-package io.spring.start.site.extension.dependency.picocli;
diff --git a/start-site/src/main/resources/META-INF/spring.factories b/start-site/src/main/resources/META-INF/spring.factories
index b02845bcb6..181db41f02 100644
--- a/start-site/src/main/resources/META-INF/spring.factories
+++ b/start-site/src/main/resources/META-INF/spring.factories
@@ -20,7 +20,6 @@ io.spring.start.site.extension.dependency.mysql.MysqlProjectGenerationConfigurat
io.spring.start.site.extension.dependency.neo4j.Neo4jProjectGenerationConfiguration,\
io.spring.start.site.extension.dependency.observability.ObservabilityProjectGenerationConfiguration,\
io.spring.start.site.extension.dependency.oracle.OracleProjectGenerationConfiguration,\
-io.spring.start.site.extension.dependency.picocli.PicocliProjectGenerationConfiguration,\
io.spring.start.site.extension.dependency.postgresql.PgVectorProjectGenerationConfiguration,\
io.spring.start.site.extension.dependency.postgresql.PostgresqlProjectGenerationConfiguration,\
io.spring.start.site.extension.dependency.redis.RedisProjectGenerationConfiguration,\
diff --git a/start-site/src/main/resources/application.yml b/start-site/src/main/resources/application.yml
index 28aee36ea3..0de6deebaf 100644
--- a/start-site/src/main/resources/application.yml
+++ b/start-site/src/main/resources/application.yml
@@ -882,18 +882,6 @@ initializr:
description: Caching Data with Spring
- rel: reference
href: https://docs.spring.io/spring-boot/docs/{bootVersion}/reference/htmlsingle/index.html#io.caching
- - name: Picocli
- id: picocli
- groupId: info.picocli
- artifactId: picocli-spring-boot-starter
- compatibilityRange: "[3.0.0,3.2.0-M1)"
- description: Build command line applications with picocli.
- mappings:
- - compatibilityRange: "[3.0.0,3.2.0-M1)"
- version: 4.7.5
- links:
- - rel: reference
- href: https://picocli.info/#_spring_boot_example
- name: Spring Shell
id: spring-shell
groupId: org.springframework.shell
diff --git a/start-site/src/test/java/io/spring/start/site/extension/dependency/picocli/PicocliCodegenBuildCustomizerTests.java b/start-site/src/test/java/io/spring/start/site/extension/dependency/picocli/PicocliCodegenBuildCustomizerTests.java
deleted file mode 100644
index d2aa0c5b37..0000000000
--- a/start-site/src/test/java/io/spring/start/site/extension/dependency/picocli/PicocliCodegenBuildCustomizerTests.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Copyright 2012-2023 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.spring.start.site.extension.dependency.picocli;
-
-import io.spring.initializr.generator.version.Version;
-import io.spring.initializr.metadata.Dependency;
-import io.spring.initializr.web.project.ProjectRequest;
-import io.spring.start.site.extension.AbstractExtensionTests;
-import org.junit.jupiter.api.Test;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-/**
- * Tests for {@link PicocliCodegenBuildCustomizer}.
- *
- * @author Brian Clozel
- */
-class PicocliCodegenBuildCustomizerTests extends AbstractExtensionTests {
-
- private static final Version SPRING_BOOT_3_VERSION = Version.parse("3.1.0");
-
- @Test
- void picocliCodegenIsAddedAsMavenOptionalDependency() {
- ProjectRequest request = createProjectRequest("picocli", "native");
- request.setBootVersion(SPRING_BOOT_3_VERSION.toString());
- assertThat(mavenPom(request)).hasDependency(getPicocli(SPRING_BOOT_3_VERSION))
- .hasDependency(getPicocliCodegen(SPRING_BOOT_3_VERSION))
- .hasText("/project/dependencies/dependency[2]/optional", "true");
- }
-
- @Test
- void picocliCodegenIsNotAddedAsMavenDependencyIfNativeNotSelected() {
- ProjectRequest request = createProjectRequest("picocli");
- request.setBootVersion(SPRING_BOOT_3_VERSION.toString());
- assertThat(mavenPom(request)).hasDependency(getDependency("picocli"))
- .doesNotHaveDependency("info.picocli", "picocli-codegen");
- }
-
- @Test
- void picocliCodegenIsAddedAsGradleAnnotationProcessor() {
- ProjectRequest request = createProjectRequest("picocli", "native");
- request.setBootVersion(SPRING_BOOT_3_VERSION.toString());
- assertThat(gradleBuild(request)).contains("annotationProcessor 'info.picocli:picocli-codegen:"
- + getPicocli(SPRING_BOOT_3_VERSION).getVersion() + "'");
- }
-
- @Test
- void picocliCodegenIsNotAddedAsGradleAnnotationProcessorIfNativeNotSelected() {
- ProjectRequest request = createProjectRequest("picocli");
- request.setBootVersion(SPRING_BOOT_3_VERSION.toString());
- assertThat(gradleBuild(request)).doesNotContain("info.picocli:picocli-codegen");
- }
-
- private Dependency getPicocli(Version springBootVersion) {
- return getDependency("picocli").resolve(springBootVersion);
- }
-
- private Dependency getPicocliCodegen(Version springBootVersion) {
- return Dependency.create("info.picocli", "picocli-codegen", getPicocli(springBootVersion).getVersion(),
- Dependency.SCOPE_COMPILE);
- }
-
-}