4
4
5
5
import java .util .ArrayList ;
6
6
import java .util .List ;
7
+ import java .util .Optional ;
7
8
import java .util .stream .Stream ;
8
9
9
10
import io .quarkus .awt .runtime .graal .DarwinAwtFeature ;
21
22
import io .quarkus .deployment .builditem .nativeimage .RuntimeInitializedPackageBuildItem ;
22
23
import io .quarkus .deployment .builditem .nativeimage .UnsupportedOSBuildItem ;
23
24
import io .quarkus .deployment .pkg .builditem .NativeImageRunnerBuildItem ;
25
+ import io .quarkus .deployment .pkg .builditem .ProcessInheritIODisabled ;
26
+ import io .quarkus .deployment .pkg .builditem .ProcessInheritIODisabledBuildItem ;
24
27
import io .quarkus .deployment .pkg .steps .GraalVM ;
25
28
import io .quarkus .deployment .pkg .steps .NativeOrNativeSourcesBuild ;
26
29
@@ -95,7 +98,11 @@ ReflectiveClassBuildItem setupReflectionClassesWithMethods() {
95
98
void setupAWTInit (BuildProducer <JniRuntimeAccessBuildItem > jc ,
96
99
BuildProducer <JniRuntimeAccessMethodBuildItem > jm ,
97
100
BuildProducer <JniRuntimeAccessFieldBuildItem > jf ,
98
- NativeImageRunnerBuildItem nativeImageRunnerBuildItem ) {
101
+ NativeImageRunnerBuildItem nativeImageRunnerBuildItem ,
102
+ Optional <ProcessInheritIODisabled > processInheritIODisabled ,
103
+ Optional <ProcessInheritIODisabledBuildItem > processInheritIODisabledBuildItem ) {
104
+ nativeImageRunnerBuildItem .getBuildRunner ()
105
+ .setup (processInheritIODisabled .isPresent () || processInheritIODisabledBuildItem .isPresent ());
99
106
final GraalVM .Version v = nativeImageRunnerBuildItem .getBuildRunner ().getGraalVMVersion ();
100
107
// Dynamically loading shared objects instead
101
108
// of baking in static libs: https://github.com/oracle/graal/issues/4921
@@ -118,7 +125,11 @@ void setupAWTInit(BuildProducer<JniRuntimeAccessBuildItem> jc,
118
125
}
119
126
120
127
@ BuildStep (onlyIf = NativeOrNativeSourcesBuild .class )
121
- JniRuntimeAccessBuildItem setupJava2DClasses (NativeImageRunnerBuildItem nativeImageRunnerBuildItem ) {
128
+ JniRuntimeAccessBuildItem setupJava2DClasses (NativeImageRunnerBuildItem nativeImageRunnerBuildItem ,
129
+ Optional <ProcessInheritIODisabled > processInheritIODisabled ,
130
+ Optional <ProcessInheritIODisabledBuildItem > processInheritIODisabledBuildItem ) {
131
+ nativeImageRunnerBuildItem .getBuildRunner ()
132
+ .setup (processInheritIODisabled .isPresent () || processInheritIODisabledBuildItem .isPresent ());
122
133
final GraalVM .Version v = nativeImageRunnerBuildItem .getBuildRunner ().getGraalVMVersion ();
123
134
final List <String > classes = new ArrayList <>();
124
135
classes .add ("com.sun.imageio.plugins.jpeg.JPEGImageReader" );
0 commit comments