Skip to content

Commit 6e90039

Browse files
committed
Remove AppCDS generation from core and keep the one in Arc
This is done as Arc is pretty much a requirement for all applications so we can simplify the AppCDS handling
1 parent 052129a commit 6e90039

File tree

4 files changed

+0
-64
lines changed

4 files changed

+0
-64
lines changed

core/deployment/src/main/java/io/quarkus/deployment/pkg/builditem/AppCDSControlPointBuildItem.java

Lines changed: 0 additions & 11 deletions
This file was deleted.

core/deployment/src/main/java/io/quarkus/deployment/steps/MainClassBuildStep.java

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,6 @@
6161
import io.quarkus.deployment.configuration.RunTimeConfigurationGenerator;
6262
import io.quarkus.deployment.naming.NamingConfig;
6363
import io.quarkus.deployment.pkg.PackageConfig;
64-
import io.quarkus.deployment.pkg.builditem.AppCDSControlPointBuildItem;
65-
import io.quarkus.deployment.pkg.builditem.AppCDSRequestedBuildItem;
6664
import io.quarkus.deployment.recording.BytecodeRecorderImpl;
6765
import io.quarkus.dev.appstate.ApplicationStateNotification;
6866
import io.quarkus.dev.console.QuarkusConsole;
@@ -77,7 +75,6 @@
7775
import io.quarkus.gizmo.ResultHandle;
7876
import io.quarkus.gizmo.TryBlock;
7977
import io.quarkus.runtime.Application;
80-
import io.quarkus.runtime.ApplicationLifecycleManager;
8178
import io.quarkus.runtime.ExecutionModeManager;
8279
import io.quarkus.runtime.LaunchMode;
8380
import io.quarkus.runtime.NativeImageRuntimePropertiesRecorder;
@@ -87,7 +84,6 @@
8784
import io.quarkus.runtime.StartupContext;
8885
import io.quarkus.runtime.StartupTask;
8986
import io.quarkus.runtime.annotations.QuarkusMain;
90-
import io.quarkus.runtime.appcds.AppCDSUtil;
9187
import io.quarkus.runtime.configuration.ConfigUtils;
9288
import io.quarkus.runtime.util.StepTiming;
9389

@@ -140,8 +136,6 @@ void build(List<StaticBytecodeRecorderBuildItem> staticInitTasks,
140136
LiveReloadBuildItem liveReloadBuildItem,
141137
ApplicationInfoBuildItem applicationInfo,
142138
List<AllowJNDIBuildItem> allowJNDIBuildItems,
143-
Optional<AppCDSRequestedBuildItem> appCDSRequested,
144-
Optional<AppCDSControlPointBuildItem> appCDSControlPoint,
145139
NamingConfig namingConfig) {
146140

147141
appClassNameProducer.produce(new ApplicationClassNameBuildItem(Application.APP_CLASS_NAME));
@@ -224,22 +218,6 @@ void build(List<StaticBytecodeRecorderBuildItem> staticInitTasks,
224218
mv = file.getMethodCreator("doStart", void.class, String[].class);
225219
mv.setModifiers(Modifier.PROTECTED | Modifier.FINAL);
226220

227-
// if AppCDS generation was requested and no other code has requested handling of the process,
228-
// we ensure that the application simply loads some classes from a file and terminates
229-
if (appCDSRequested.isPresent() && appCDSControlPoint.isEmpty()) {
230-
ResultHandle createAppCDsSysProp = mv.invokeStaticMethod(
231-
ofMethod(System.class, "getProperty", String.class, String.class, String.class),
232-
mv.load(GENERATE_APP_CDS_SYSTEM_PROPERTY), mv.load("false"));
233-
ResultHandle createAppCDSBool = mv.invokeStaticMethod(
234-
ofMethod(Boolean.class, "parseBoolean", boolean.class, String.class), createAppCDsSysProp);
235-
BytecodeCreator createAppCDS = mv.ifTrue(createAppCDSBool).trueBranch();
236-
237-
createAppCDS.invokeStaticMethod(ofMethod(AppCDSUtil.class, "loadGeneratedClasses", void.class));
238-
239-
createAppCDS.invokeStaticMethod(ofMethod(ApplicationLifecycleManager.class, "exit", void.class));
240-
createAppCDS.returnValue(null);
241-
}
242-
243221
// Make sure we set properties in doStartup as well. This is necessary because setting them in the static-init
244222
// sets them at build-time, on the host JVM, while SVM has substitutions for System. get/ setProperty at
245223
// run-time which will never see those properties unless we also set them at run-time.

core/runtime/src/main/java/io/quarkus/runtime/appcds/AppCDSUtil.java

Lines changed: 0 additions & 28 deletions
This file was deleted.

extensions/arc/deployment/src/main/java/io/quarkus/arc/deployment/ArcProcessor.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,6 @@
9393
import io.quarkus.deployment.builditem.nativeimage.ReflectiveClassBuildItem;
9494
import io.quarkus.deployment.builditem.nativeimage.ReflectiveFieldBuildItem;
9595
import io.quarkus.deployment.builditem.nativeimage.ReflectiveMethodBuildItem;
96-
import io.quarkus.deployment.pkg.builditem.AppCDSControlPointBuildItem;
9796
import io.quarkus.deployment.pkg.builditem.AppCDSRequestedBuildItem;
9897
import io.quarkus.runtime.LaunchMode;
9998
import io.quarkus.runtime.QuarkusApplication;
@@ -641,11 +640,9 @@ public PreBeanContainerBuildItem notifyBeanContainerListeners(ArcContainerBuildI
641640
@BuildStep
642641
public void signalBeanContainerReady(AppCDSRecorder recorder, PreBeanContainerBuildItem bi,
643642
Optional<AppCDSRequestedBuildItem> appCDSRequested,
644-
BuildProducer<AppCDSControlPointBuildItem> appCDSControlPointProducer,
645643
BuildProducer<BeanContainerBuildItem> beanContainerProducer) {
646644
if (appCDSRequested.isPresent()) {
647645
recorder.controlGenerationAndExit();
648-
appCDSControlPointProducer.produce(new AppCDSControlPointBuildItem());
649646
}
650647
beanContainerProducer.produce(new BeanContainerBuildItem(bi.getValue()));
651648
}

0 commit comments

Comments
 (0)