in atomos.maven/src/main/java/org/apache/felix/atomos/maven/LauncherBuilderUtil.java [167:259]
public static NativeImageBuilderConfig processNativeImageConfig(
MavenNativeImageConfig nativeImageConfig, MavenProject project)
{
NativeImageBuilderConfig nic = new NativeImageBuilderConfig()
{
@Override
public List<Path> dynamicProxyConfigurationFiles()
{
return Optional.ofNullable(
nativeImageConfig.dynamicProxyConfigurationFiles)//
.map(List::stream).orElse(Stream.of())//
.map(File::toPath)//
.collect(Collectors.toList());
}
@Override
public List<Path> reflectionConfigurationFiles()
{
return Optional.ofNullable(nativeImageConfig.reflectionConfigurationFiles)//
.map(List::stream).orElse(Stream.of())//
.map(File::toPath)//
.collect(Collectors.toList());
}
@Override
public List<Path> resourceConfigurationFiles()
{
return Optional.ofNullable(nativeImageConfig.resourceConfigurationFiles)//
.map(List::stream).orElse(Stream.of())//
.map(File::toPath)//
.collect(Collectors.toList());
}
@Override
public List<String> nativeImageAdditionalInitializeAtBuildTime()
{
return nativeImageConfig.additionalInitializeAtBuildTime;
}
@Override
public String nativeImageApplicationName()
{
return nativeImageConfig.applicationName;
}
@Override
public Path nativeImageExecutable()
{
return Optional.ofNullable(nativeImageConfig.nativeImageExecutable).map(
File::toPath).orElse(null);
}
@Override
public String nativeImageMainClass()
{
if (nativeImageConfig.mainClass == null
|| nativeImageConfig.mainClass.isEmpty())
{
return "org.apache.felix.atomos.Atomos";
}
return nativeImageConfig.mainClass;
}
@Override
public Path nativeImageOutputDirectory()
{
return Optional.ofNullable(nativeImageConfig.outputDirectory).map(
File::toPath).orElse(null);
}
@Override
public List<String> nativeImageVmFlags()
{
return nativeImageConfig.vmFlags;
}
@Override
public Map<String, String> nativeImageVmSystemProperties()
{
return nativeImageConfig.vmSystemProperties;
}
@Override
public Boolean noFallback()
{
return nativeImageConfig.noFallBack;
}
};
return nic;
}