42
42
import java .util .function .Function ;
43
43
import java .util .stream .Collectors ;
44
44
45
- import jdk .graal .compiler .options .OptionsContainer ;
46
45
import org .graalvm .collections .EconomicMap ;
47
46
import org .graalvm .nativeimage .ImageSingletons ;
48
47
import org .graalvm .nativeimage .hosted .Feature ;
74
73
import jdk .graal .compiler .options .OptionDescriptor ;
75
74
import jdk .graal .compiler .options .OptionDescriptors ;
76
75
import jdk .graal .compiler .options .OptionStability ;
76
+ import jdk .graal .compiler .options .OptionsContainer ;
77
77
import jdk .graal .compiler .options .OptionsParser ;
78
78
79
79
class APIOptionHandler extends NativeImage .OptionHandler <NativeImage > {
@@ -410,7 +410,10 @@ String translateOption(ArgumentQueue argQueue) {
410
410
OptionInfo option = null ;
411
411
boolean whitespaceSeparated = false ;
412
412
String [] optionNameAndOptionValue = null ;
413
- OptionOrigin argumentOrigin = OptionOrigin .from (argQueue .argumentOrigin );
413
+ String argumentOriginString = OptionOrigin .from (argQueue .argumentOrigin ).toString ();
414
+ if (nativeImage .useBundle ()) {
415
+ argumentOriginString = nativeImage .bundleSupport .cleanupBuilderOutput (argumentOriginString );
416
+ }
414
417
found : for (OptionInfo optionInfo : apiOptions .values ()) {
415
418
for (String variant : optionInfo .variants ) {
416
419
String optionName ;
@@ -437,7 +440,7 @@ String translateOption(ArgumentQueue argQueue) {
437
440
argQueue .poll ();
438
441
String optionValue = argQueue .peek ();
439
442
if (optionValue == null ) {
440
- NativeImage .showError (headArg + " from " + argumentOrigin + " requires option argument" );
443
+ NativeImage .showError (headArg + " from " + argumentOriginString + " requires option argument" );
441
444
}
442
445
option = optionInfo ;
443
446
optionNameAndOptionValue = new String []{headArg , optionValue };
@@ -457,14 +460,14 @@ String translateOption(ArgumentQueue argQueue) {
457
460
}
458
461
if (option != null ) {
459
462
if (!option .deprecationWarning .isEmpty ()) {
460
- LogUtils .warning ("Using a deprecated option " + optionNameAndOptionValue [0 ] + " from " + argumentOrigin + ". " + option .deprecationWarning );
463
+ LogUtils .warning ("Using a deprecated option " + optionNameAndOptionValue [0 ] + " from " + argumentOriginString + ". " + option .deprecationWarning );
461
464
}
462
465
String builderOption = option .builderOption ;
463
466
/* If option is in group, defaultValue has different use */
464
467
String optionValue = option .group != null ? null : option .defaultValue ;
465
468
if (optionNameAndOptionValue .length == 2 ) {
466
469
if (option .defaultFinal ) {
467
- NativeImage .showError ("Passing values to option " + optionNameAndOptionValue [0 ] + " from " + argumentOrigin + " is not supported." );
470
+ NativeImage .showError ("Passing values to option " + optionNameAndOptionValue [0 ] + " from " + argumentOriginString + " is not supported." );
468
471
}
469
472
optionValue = optionNameAndOptionValue [1 ];
470
473
}
0 commit comments