diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0c793f2 --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +out/ +build/ +.gradle/ +.idea/ +*.iml +example/build + diff --git a/build.gradle b/build.gradle index da002ea..6aa785f 100644 --- a/build.gradle +++ b/build.gradle @@ -11,8 +11,8 @@ buildscript { } plugins { - id "io.freefair.lombok" version "6.6.1" - id "com.github.ben-manes.versions" version "0.44.0" + id "io.freefair.lombok" version "6.6.3" + id "com.github.ben-manes.versions" version "0.46.0" } apply plugin: "java-gradle-plugin" @@ -20,15 +20,13 @@ apply plugin: "com.gradle.plugin-publish" apply plugin: "jacoco" group = "nl.colorize" -version = "2023.2" +version = "2023.4" sourceCompatibility = "17" targetCompatibility = "17" compileJava.options.encoding = "UTF-8" sourceSets.main.java.srcDirs = ["source"] sourceSets.main.resources.srcDirs = ["resources"] sourceSets.test.java.srcDirs = ["test"] -jar.archiveFileName = "application-plugin.jar" -jar.duplicatesStrategy = DuplicatesStrategy.WARN repositories { mavenCentral() @@ -38,13 +36,21 @@ dependencies { implementation gradleApi() implementation localGroovy() implementation files("lib/appbundler-1.0ea.jar") - implementation "org.jsoup:jsoup:1.15.3" + implementation "org.jsoup:jsoup:1.15.4" implementation "org.commonmark:commonmark:0.21.0" implementation "org.nanohttpd:nanohttpd-webserver:2.3.1" - testImplementation "org.junit.jupiter:junit-jupiter:5.9.1" + testImplementation "org.junit.jupiter:junit-jupiter:5.9.2" } jar { + archiveFileName = "application-plugin.jar" + duplicatesStrategy = DuplicatesStrategy.WARN + exclude "**/module-info.class" + exclude "**/META-INF/INDEX.LIST" + exclude "**/META-INF/*.SF" + exclude "**/META-INF/*.DSA" + exclude "**/META-INF/*.RSA" + from { configurations.runtimeClasspath .filter { it.toString().endsWith("appbundler-1.0ea.jar") } @@ -54,7 +60,7 @@ jar { test { if (project.hasProperty("headless")) { - exclude "**/cordova/**", "**/macapplicationbundle/**", "**/windows/**" + exclude "**/cordova/**", "**/macapplicationbundle/**" } } @@ -63,22 +69,20 @@ test { } gradlePlugin { + website = "https://www.clrz.nl" + vcsUrl = "https://github.com/colorizenl/gradle-application-plugin" + plugins { applicationPlugin { id = "nl.colorize.gradle.application" implementationClass = "nl.colorize.gradle.application.ApplicationPlugin" displayName = "Gradle application plugin" description = "Build native applications for Windows, Mac, iOS, Android, and the web." + tags.set(["application", "mac", "macos", "application bundle", "windows", "msi", "pwa", "xcode"]) } } } -pluginBundle { - website = "https://www.clrz.nl" - vcsUrl = "https://github.com/colorizenl/gradle-application-plugin" - tags = ["application", "mac", "macos", "android", "windows", "application bundle", "pwa"] -} - // Gradle has a compatibility issue with Java 17 when running tests, // see https://github.com/gradle/gradle/issues/18647 for details. tasks.withType(Test).configureEach { diff --git a/example/build/classes/java/main/com/example/ExampleApp.class b/example/build/classes/java/main/com/example/ExampleApp.class deleted file mode 100644 index b3f6825..0000000 Binary files a/example/build/classes/java/main/com/example/ExampleApp.class and /dev/null differ diff --git a/example/build/libs/example.jar b/example/build/libs/example.jar deleted file mode 100644 index 06604e8..0000000 Binary files a/example/build/libs/example.jar and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/Info.plist b/example/build/mac/Example.app/Contents/Info.plist deleted file mode 100644 index d61f76f..0000000 --- a/example/build/mac/Example.app/Contents/Info.plist +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleExecutable - JavaAppLauncher - CFBundleIconFile - icon.icns - CFBundleIdentifier - com.example - CFBundleDisplayName - Example - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - Example - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1.0 - CFBundleSignature - ???? - NSHumanReadableCopyright - Copyright 2010-2023 Colorize - LSMinimumSystemVersion - 10.13 - LSApplicationCategoryType - public.app-category.developer-tools - LSUIElement - - NSHighResolutionCapable - - NSSupportsAutomaticGraphicsSwitching - - IgnorePSN - - NSRequiresAquaSystemAppearance - - JVMRuntime - temurin-17.jdk - JREPreferred - - JDKPreferred - - JVMMainClassName - com.example.ExampleApp - JVMDebug - - CFBundleDocumentTypes - - - LSArchitecturePriority - - arm64 - x86_64 - - LSEnvironment - - LC_CTYPE - UTF-8 - - JVMOptions - - -Xdock:name='Example' - -Xdock:icon='Contents/Resources/icon.icns' - -Xmx2g - - JVMDefaultOptions - - - JVMArguments - - - - - diff --git a/example/build/mac/Example.app/Contents/Java/example.jar b/example/build/mac/Example.app/Contents/Java/example.jar deleted file mode 100644 index 06604e8..0000000 Binary files a/example/build/mac/Example.app/Contents/Java/example.jar and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/MacOS/JavaAppLauncher b/example/build/mac/Example.app/Contents/MacOS/JavaAppLauncher deleted file mode 100755 index 15f0dc8..0000000 Binary files a/example/build/mac/Example.app/Contents/MacOS/JavaAppLauncher and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PkgInfo b/example/build/mac/Example.app/Contents/PkgInfo deleted file mode 100644 index bd04210..0000000 --- a/example/build/mac/Example.app/Contents/PkgInfo +++ /dev/null @@ -1 +0,0 @@ -APPL???? \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/logging.properties b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/logging.properties deleted file mode 100644 index 99a3850..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/logging.properties +++ /dev/null @@ -1,63 +0,0 @@ -############################################################ -# Default Logging Configuration File -# -# You can use a different file by specifying a filename -# with the java.util.logging.config.file system property. -# For example, java -Djava.util.logging.config.file=myfile -############################################################ - -############################################################ -# Global properties -############################################################ - -# "handlers" specifies a comma-separated list of log Handler -# classes. These handlers will be installed during VM startup. -# Note that these classes must be on the system classpath. -# By default we only configure a ConsoleHandler, which will only -# show messages at the INFO and above levels. -handlers= java.util.logging.ConsoleHandler - -# To also add the FileHandler, use the following line instead. -#handlers= java.util.logging.FileHandler, java.util.logging.ConsoleHandler - -# Default global logging level. -# This specifies which kinds of events are logged across -# all loggers. For any given facility this global level -# can be overridden by a facility-specific level -# Note that the ConsoleHandler also has a separate level -# setting to limit messages printed to the console. -.level= INFO - -############################################################ -# Handler specific properties. -# Describes specific configuration info for Handlers. -############################################################ - -# default file output is in user's home directory. -java.util.logging.FileHandler.pattern = %h/java%u.log -java.util.logging.FileHandler.limit = 50000 -java.util.logging.FileHandler.count = 1 -# Default number of locks FileHandler can obtain synchronously. -# This specifies maximum number of attempts to obtain lock file by FileHandler -# implemented by incrementing the unique field %u as per FileHandler API documentation. -java.util.logging.FileHandler.maxLocks = 100 -java.util.logging.FileHandler.formatter = java.util.logging.XMLFormatter - -# Limit the messages that are printed on the console to INFO and above. -java.util.logging.ConsoleHandler.level = INFO -java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter - -# Example to customize the SimpleFormatter output format -# to print one-line log message like this: -# : [] -# -# java.util.logging.SimpleFormatter.format=%4$s: %5$s [%1$tc]%n - -############################################################ -# Facility-specific properties. -# Provides extra control for each logger. -############################################################ - -# For example, set the com.xyz.foo logger to only log SEVERE -# messages: -# com.xyz.foo.level = SEVERE diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/net.properties b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/net.properties deleted file mode 100644 index 9cefdff..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/net.properties +++ /dev/null @@ -1,147 +0,0 @@ -############################################################ -# Default Networking Configuration File -# -# This file may contain default values for the networking system properties. -# These values are only used when the system properties are not specified -# on the command line or set programmatically. -# For now, only the various proxy settings can be configured here. -############################################################ - -# Whether or not the DefaultProxySelector will default to System Proxy -# settings when they do exist. -# Set it to 'true' to enable this feature and check for platform -# specific proxy settings -# Note that the system properties that do explicitly set proxies -# (like http.proxyHost) do take precedence over the system settings -# even if java.net.useSystemProxies is set to true. - -java.net.useSystemProxies=false - -#------------------------------------------------------------------------ -# Proxy configuration for the various protocol handlers. -# DO NOT uncomment these lines if you have set java.net.useSystemProxies -# to true as the protocol specific properties will take precedence over -# system settings. -#------------------------------------------------------------------------ - -# HTTP Proxy settings. proxyHost is the name of the proxy server -# (e.g. proxy.mydomain.com), proxyPort is the port number to use (default -# value is 80) and nonProxyHosts is a '|' separated list of hostnames which -# should be accessed directly, ignoring the proxy server (default value is -# localhost & 127.0.0.1). -# -# http.proxyHost= -# http.proxyPort=80 -http.nonProxyHosts=localhost|127.*|[::1] -# -# HTTPS Proxy Settings. proxyHost is the name of the proxy server -# (e.g. proxy.mydomain.com), proxyPort is the port number to use (default -# value is 443). The HTTPS protocol handlers uses the http nonProxyHosts list. -# -# https.proxyHost= -# https.proxyPort=443 -# -# FTP Proxy settings. proxyHost is the name of the proxy server -# (e.g. proxy.mydomain.com), proxyPort is the port number to use (default -# value is 80) and nonProxyHosts is a '|' separated list of hostnames which -# should be accessed directly, ignoring the proxy server (default value is -# localhost & 127.0.0.1). -# -# ftp.proxyHost= -# ftp.proxyPort=80 -ftp.nonProxyHosts=localhost|127.*|[::1] -# -# Socks proxy settings. socksProxyHost is the name of the proxy server -# (e.g. socks.domain.com), socksProxyPort is the port number to use -# (default value is 1080) -# -# socksProxyHost= -# socksProxyPort=1080 -# -# HTTP Keep Alive settings. remainingData is the maximum amount of data -# in kilobytes that will be cleaned off the underlying socket so that it -# can be reused (default value is 512K), queuedConnections is the maximum -# number of Keep Alive connections to be on the queue for clean up (default -# value is 10). -# http.KeepAlive.remainingData=512 -# http.KeepAlive.queuedConnections=10 - -# Authentication Scheme restrictions for HTTP and HTTPS. -# -# In some environments certain authentication schemes may be undesirable -# when proxying HTTP or HTTPS. For example, "Basic" results in effectively the -# cleartext transmission of the user's password over the physical network. -# This section describes the mechanism for disabling authentication schemes -# based on the scheme name. Disabled schemes will be treated as if they are not -# supported by the implementation. -# -# The 'jdk.http.auth.tunneling.disabledSchemes' property lists the authentication -# schemes that will be disabled when tunneling HTTPS over a proxy, HTTP CONNECT. -# The 'jdk.http.auth.proxying.disabledSchemes' property lists the authentication -# schemes that will be disabled when proxying HTTP. -# -# In both cases the property is a comma-separated list of, case-insensitive, -# authentication scheme names, as defined by their relevant RFCs. An -# implementation may, but is not required to, support common schemes whose names -# include: 'Basic', 'Digest', 'NTLM', 'Kerberos', 'Negotiate'. A scheme that -# is not known, or not supported, by the implementation is ignored. -# -# Note: This property is currently used by the JDK Reference implementation. It -# is not guaranteed to be examined and used by other implementations. -# -#jdk.http.auth.proxying.disabledSchemes= -jdk.http.auth.tunneling.disabledSchemes=Basic - -# -# Allow restricted HTTP request headers -# -# By default, the following request headers are not allowed to be set by user code -# in HttpRequests: "connection", "content-length", "expect", "host" and "upgrade". -# The 'jdk.httpclient.allowRestrictedHeaders' property allows one or more of these -# headers to be specified as a comma separated list to override the default restriction. -# The names are case-insensitive and white-space is ignored (removed before processing -# the list). Note, this capability is mostly intended for testing and isn't expected -# to be used in real deployments. Protocol errors or other undefined behavior is likely -# to occur when using them. The property is not set by default. -# Note also, that there may be other headers that are restricted from being set -# depending on the context. This includes the "Authorization" header when the -# relevant HttpClient has an authenticator set. These restrictions cannot be -# overridden by this property. -# -# jdk.httpclient.allowRestrictedHeaders=host -# -# -# Transparent NTLM HTTP authentication mode on Windows. Transparent authentication -# can be used for the NTLM scheme, where the security credentials based on the -# currently logged in user's name and password can be obtained directly from the -# operating system, without prompting the user. This property has three possible -# values which regulate the behavior as shown below. Other unrecognized values -# are handled the same as 'disabled'. Note, that NTLM is not considered to be a -# strongly secure authentication scheme and care should be taken before enabling -# this mechanism. -# -# Transparent authentication never used. -#jdk.http.ntlm.transparentAuth=disabled -# -# Enabled for all hosts. -#jdk.http.ntlm.transparentAuth=allHosts -# -# Enabled for hosts that are trusted in Windows Internet settings -#jdk.http.ntlm.transparentAuth=trustedHosts -# -jdk.http.ntlm.transparentAuth=disabled -# -# Default directory where automatically bound Unix domain server -# sockets are stored. Sockets are automatically bound when bound -# with a null address. -# -# On Unix the search order to determine this directory is: -# -# 1. System property jdk.net.unixdomain.tmpdir -# -# 2. Networking property jdk.net.unixdomain.tmpdir specified -# in this file (effective default) -# -# 3. System property java.io.tmpdir -# -jdk.net.unixdomain.tmpdir=/tmp diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/java.policy b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/java.policy deleted file mode 100644 index 1554541..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/java.policy +++ /dev/null @@ -1,44 +0,0 @@ -// -// This system policy file grants a set of default permissions to all domains -// and can be configured to grant additional permissions to modules and other -// code sources. The code source URL scheme for modules linked into a -// run-time image is "jrt". -// -// For example, to grant permission to read the "foo" property to the module -// "com.greetings", the grant entry is: -// -// grant codeBase "jrt:/com.greetings" { -// permission java.util.PropertyPermission "foo", "read"; -// }; -// - -// default permissions granted to all domains -grant { - // allows anyone to listen on dynamic ports - permission java.net.SocketPermission "localhost:0", "listen"; - - // "standard" properies that can be read by anyone - permission java.util.PropertyPermission "java.version", "read"; - permission java.util.PropertyPermission "java.vendor", "read"; - permission java.util.PropertyPermission "java.vendor.url", "read"; - permission java.util.PropertyPermission "java.class.version", "read"; - permission java.util.PropertyPermission "os.name", "read"; - permission java.util.PropertyPermission "os.version", "read"; - permission java.util.PropertyPermission "os.arch", "read"; - permission java.util.PropertyPermission "file.separator", "read"; - permission java.util.PropertyPermission "path.separator", "read"; - permission java.util.PropertyPermission "line.separator", "read"; - permission java.util.PropertyPermission - "java.specification.version", "read"; - permission java.util.PropertyPermission "java.specification.vendor", "read"; - permission java.util.PropertyPermission "java.specification.name", "read"; - permission java.util.PropertyPermission - "java.vm.specification.version", "read"; - permission java.util.PropertyPermission - "java.vm.specification.vendor", "read"; - permission java.util.PropertyPermission - "java.vm.specification.name", "read"; - permission java.util.PropertyPermission "java.vm.version", "read"; - permission java.util.PropertyPermission "java.vm.vendor", "read"; - permission java.util.PropertyPermission "java.vm.name", "read"; -}; diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/java.security b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/java.security deleted file mode 100644 index 912613f..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/java.security +++ /dev/null @@ -1,1357 +0,0 @@ -# -# This is the "master security properties file". -# -# An alternate java.security properties file may be specified -# from the command line via the system property -# -# -Djava.security.properties= -# -# This properties file appends to the master security properties file. -# If both properties files specify values for the same key, the value -# from the command-line properties file is selected, as it is the last -# one loaded. -# -# Also, if you specify -# -# -Djava.security.properties== (2 equals), -# -# then that properties file completely overrides the master security -# properties file. -# -# To disable the ability to specify an additional properties file from -# the command line, set the key security.overridePropertiesFile -# to false in the master security properties file. It is set to true -# by default. - -# In this file, various security properties are set for use by -# java.security classes. This is where users can statically register -# Cryptography Package Providers ("providers" for short). The term -# "provider" refers to a package or set of packages that supply a -# concrete implementation of a subset of the cryptography aspects of -# the Java Security API. A provider may, for example, implement one or -# more digital signature algorithms or message digest algorithms. -# -# Each provider must implement a subclass of the Provider class. -# To register a provider in this master security properties file, -# specify the provider and priority in the format -# -# security.provider.= -# -# This declares a provider, and specifies its preference -# order n. The preference order is the order in which providers are -# searched for requested algorithms (when no specific provider is -# requested). The order is 1-based; 1 is the most preferred, followed -# by 2, and so on. -# -# must specify the name of the Provider as passed to its super -# class java.security.Provider constructor. This is for providers loaded -# through the ServiceLoader mechanism. -# -# must specify the subclass of the Provider class whose -# constructor sets the values of various properties that are required -# for the Java Security API to look up the algorithms or other -# facilities implemented by the provider. This is for providers loaded -# through classpath. -# -# Note: Providers can be dynamically registered instead by calls to -# either the addProvider or insertProviderAt method in the Security -# class. - -# -# List of providers and their preference orders (see above): -# -security.provider.1=SUN -security.provider.2=SunRsaSign -security.provider.3=SunEC -security.provider.4=SunJSSE -security.provider.5=SunJCE -security.provider.6=SunJGSS -security.provider.7=SunSASL -security.provider.8=XMLDSig -security.provider.9=SunPCSC -security.provider.10=JdkLDAP -security.provider.11=JdkSASL -security.provider.12=Apple -security.provider.13=SunPKCS11 - -# -# A list of preferred providers for specific algorithms. These providers will -# be searched for matching algorithms before the list of registered providers. -# Entries containing errors (parsing, etc) will be ignored. Use the -# -Djava.security.debug=jca property to debug these errors. -# -# The property is a comma-separated list of serviceType.algorithm:provider -# entries. The serviceType (example: "MessageDigest") is optional, and if -# not specified, the algorithm applies to all service types that support it. -# The algorithm is the standard algorithm name or transformation. -# Transformations can be specified in their full standard name -# (ex: AES/CBC/PKCS5Padding), or as partial matches (ex: AES, AES/CBC). -# The provider is the name of the provider. Any provider that does not -# also appear in the registered list will be ignored. -# -# There is a special serviceType for this property only to group a set of -# algorithms together. The type is "Group" and is followed by an algorithm -# keyword. Groups are to simplify and lessen the entries on the property -# line. Current groups are: -# Group.SHA2 = SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA-512/256 -# Group.HmacSHA2 = HmacSHA224, HmacSHA256, HmacSHA384, HmacSHA512 -# Group.SHA2RSA = SHA224withRSA, SHA256withRSA, SHA384withRSA, SHA512withRSA -# Group.SHA2DSA = SHA224withDSA, SHA256withDSA, SHA384withDSA, SHA512withDSA -# Group.SHA2ECDSA = SHA224withECDSA, SHA256withECDSA, SHA384withECDSA, \ -# SHA512withECDSA -# Group.SHA3 = SHA3-224, SHA3-256, SHA3-384, SHA3-512 -# Group.HmacSHA3 = HmacSHA3-224, HmacSHA3-256, HmacSHA3-384, HmacSHA3-512 -# -# Example: -# jdk.security.provider.preferred=AES/GCM/NoPadding:SunJCE, \ -# MessageDigest.SHA-256:SUN, Group.HmacSHA2:SunJCE -# -#jdk.security.provider.preferred= - - -# -# Sun Provider SecureRandom seed source. -# -# Select the primary source of seed data for the "NativePRNG", "SHA1PRNG" -# and "DRBG" SecureRandom implementations in the "Sun" provider. -# (Other SecureRandom implementations might also use this property.) -# -# On Unix-like systems (for example, Linux/MacOS), the -# "NativePRNG", "SHA1PRNG" and "DRBG" implementations obtains seed data from -# special device files such as file:/dev/random. -# -# On Windows systems, specifying the URLs "file:/dev/random" or -# "file:/dev/urandom" will enable the native Microsoft CryptoAPI seeding -# mechanism for SHA1PRNG and DRBG. -# -# By default, an attempt is made to use the entropy gathering device -# specified by the "securerandom.source" Security property. If an -# exception occurs while accessing the specified URL: -# -# NativePRNG: -# a default value of /dev/random will be used. If neither -# are available, the implementation will be disabled. -# "file" is the only currently supported protocol type. -# -# SHA1PRNG and DRBG: -# the traditional system/thread activity algorithm will be used. -# -# The entropy gathering device can also be specified with the System -# property "java.security.egd". For example: -# -# % java -Djava.security.egd=file:/dev/random MainClass -# -# Specifying this System property will override the -# "securerandom.source" Security property. -# -# In addition, if "file:/dev/random" or "file:/dev/urandom" is -# specified, the "NativePRNG" implementation will be more preferred than -# DRBG and SHA1PRNG in the Sun provider. -# -securerandom.source=file:/dev/random - -# -# A list of known strong SecureRandom implementations. -# -# To help guide applications in selecting a suitable strong -# java.security.SecureRandom implementation, Java distributions should -# indicate a list of known strong implementations using the property. -# -# This is a comma-separated list of algorithm and/or algorithm:provider -# entries. -# -securerandom.strongAlgorithms=NativePRNGBlocking:SUN,DRBG:SUN - -# -# Sun provider DRBG configuration and default instantiation request. -# -# NIST SP 800-90Ar1 lists several DRBG mechanisms. Each can be configured -# with a DRBG algorithm name, and can be instantiated with a security strength, -# prediction resistance support, etc. This property defines the configuration -# and the default instantiation request of "DRBG" SecureRandom implementations -# in the SUN provider. (Other DRBG implementations can also use this property.) -# Applications can request different instantiation parameters like security -# strength, capability, personalization string using one of the -# getInstance(...,SecureRandomParameters,...) methods with a -# DrbgParameters.Instantiation argument, but other settings such as the -# mechanism and DRBG algorithm names are not currently configurable by any API. -# -# Please note that the SUN implementation of DRBG always supports reseeding. -# -# The value of this property is a comma-separated list of all configurable -# aspects. The aspects can appear in any order but the same aspect can only -# appear at most once. Its BNF-style definition is: -# -# Value: -# aspect { "," aspect } -# -# aspect: -# mech_name | algorithm_name | strength | capability | df -# -# // The DRBG mechanism to use. Default "Hash_DRBG" -# mech_name: -# "Hash_DRBG" | "HMAC_DRBG" | "CTR_DRBG" -# -# // The DRBG algorithm name. The "SHA-***" names are for Hash_DRBG and -# // HMAC_DRBG, default "SHA-256". The "AES-***" names are for CTR_DRBG, -# // default "AES-128" when using the limited cryptographic or "AES-256" -# // when using the unlimited. -# algorithm_name: -# "SHA-224" | "SHA-512/224" | "SHA-256" | -# "SHA-512/256" | "SHA-384" | "SHA-512" | -# "AES-128" | "AES-192" | "AES-256" -# -# // Security strength requested. Default "128" -# strength: -# "112" | "128" | "192" | "256" -# -# // Prediction resistance and reseeding request. Default "none" -# // "pr_and_reseed" - Both prediction resistance and reseeding -# // support requested -# // "reseed_only" - Only reseeding support requested -# // "none" - Neither prediction resistance not reseeding -# // support requested -# pr: -# "pr_and_reseed" | "reseed_only" | "none" -# -# // Whether a derivation function should be used. only applicable -# // to CTR_DRBG. Default "use_df" -# df: -# "use_df" | "no_df" -# -# Examples, -# securerandom.drbg.config=Hash_DRBG,SHA-224,112,none -# securerandom.drbg.config=CTR_DRBG,AES-256,192,pr_and_reseed,use_df -# -# The default value is an empty string, which is equivalent to -# securerandom.drbg.config=Hash_DRBG,SHA-256,128,none -# -securerandom.drbg.config= - -# -# Class to instantiate as the javax.security.auth.login.Configuration -# provider. -# -login.configuration.provider=sun.security.provider.ConfigFile - -# -# Default login configuration file -# -#login.config.url.1=file:${user.home}/.java.login.config - -# -# Class to instantiate as the system Policy. This is the name of the class -# that will be used as the Policy object. The system class loader is used to -# locate this class. -# -policy.provider=sun.security.provider.PolicyFile - -# The default is to have a single system-wide policy file, -# and a policy file in the user's home directory. -# -policy.url.1=file:${java.home}/conf/security/java.policy -policy.url.2=file:${user.home}/.java.policy - -# Controls whether or not properties are expanded in policy and login -# configuration files. If set to false, properties (${...}) will not -# be expanded in policy and login configuration files. If commented out or -# set to an empty string, the default value is "false" for policy files and -# "true" for login configuration files. -# -policy.expandProperties=true - -# Controls whether or not an extra policy or login configuration file is -# allowed to be passed on the command line with -Djava.security.policy=somefile -# or -Djava.security.auth.login.config=somefile. If commented out or set to -# an empty string, the default value is "false". -# -policy.allowSystemProperty=true - -# whether or not we look into the IdentityScope for trusted Identities -# when encountering a 1.1 signed JAR file. If the identity is found -# and is trusted, we grant it AllPermission. Note: the default policy -# provider (sun.security.provider.PolicyFile) does not support this property. -# -policy.ignoreIdentityScope=false - -# -# Default keystore type. -# -keystore.type=pkcs12 - -# -# Controls compatibility mode for JKS and PKCS12 keystore types. -# -# When set to 'true', both JKS and PKCS12 keystore types support loading -# keystore files in either JKS or PKCS12 format. When set to 'false' the -# JKS keystore type supports loading only JKS keystore files and the PKCS12 -# keystore type supports loading only PKCS12 keystore files. -# -keystore.type.compat=true - -# -# List of comma-separated packages that start with or equal this string -# will cause a security exception to be thrown when passed to the -# SecurityManager::checkPackageAccess method unless the corresponding -# RuntimePermission("accessClassInPackage."+package) has been granted. -# -package.access=sun.misc.,\ - sun.reflect. - -# -# List of comma-separated packages that start with or equal this string -# will cause a security exception to be thrown when passed to the -# SecurityManager::checkPackageDefinition method unless the corresponding -# RuntimePermission("defineClassInPackage."+package) has been granted. -# -# By default, none of the class loaders supplied with the JDK call -# checkPackageDefinition. -# -package.definition=sun.misc.,\ - sun.reflect. - -# -# Determines whether this properties file can be appended to -# or overridden on the command line via -Djava.security.properties -# -security.overridePropertiesFile=true - -# -# Determines the default key and trust manager factory algorithms for -# the javax.net.ssl package. -# -ssl.KeyManagerFactory.algorithm=SunX509 -ssl.TrustManagerFactory.algorithm=PKIX - -# -# The Java-level namelookup cache policy for successful lookups: -# -# any negative value: caching forever -# any positive value: the number of seconds to cache an address for -# zero: do not cache -# -# default value is forever (FOREVER). For security reasons, this -# caching is made forever when a security manager is set. When a security -# manager is not set, the default behavior in this implementation -# is to cache for 30 seconds. -# -# NOTE: setting this to anything other than the default value can have -# serious security implications. Do not set it unless -# you are sure you are not exposed to DNS spoofing attack. -# -#networkaddress.cache.ttl=-1 - -# The Java-level namelookup cache policy for failed lookups: -# -# any negative value: cache forever -# any positive value: the number of seconds to cache negative lookup results -# zero: do not cache -# -# In some Microsoft Windows networking environments that employ -# the WINS name service in addition to DNS, name service lookups -# that fail may take a noticeably long time to return (approx. 5 seconds). -# For this reason the default caching policy is to maintain these -# results for 10 seconds. -# -networkaddress.cache.negative.ttl=10 - -# -# Properties to configure OCSP for certificate revocation checking -# - -# Enable OCSP -# -# By default, OCSP is not used for certificate revocation checking. -# This property enables the use of OCSP when set to the value "true". -# -# NOTE: SocketPermission is required to connect to an OCSP responder. -# -# Example, -# ocsp.enable=true - -# -# Location of the OCSP responder -# -# By default, the location of the OCSP responder is determined implicitly -# from the certificate being validated. This property explicitly specifies -# the location of the OCSP responder. The property is used when the -# Authority Information Access extension (defined in RFC 5280) is absent -# from the certificate or when it requires overriding. -# -# Example, -# ocsp.responderURL=http://ocsp.example.net:80 - -# -# Subject name of the OCSP responder's certificate -# -# By default, the certificate of the OCSP responder is that of the issuer -# of the certificate being validated. This property identifies the certificate -# of the OCSP responder when the default does not apply. Its value is a string -# distinguished name (defined in RFC 2253) which identifies a certificate in -# the set of certificates supplied during cert path validation. In cases where -# the subject name alone is not sufficient to uniquely identify the certificate -# then both the "ocsp.responderCertIssuerName" and -# "ocsp.responderCertSerialNumber" properties must be used instead. When this -# property is set then those two properties are ignored. -# -# Example, -# ocsp.responderCertSubjectName=CN=OCSP Responder, O=XYZ Corp - -# -# Issuer name of the OCSP responder's certificate -# -# By default, the certificate of the OCSP responder is that of the issuer -# of the certificate being validated. This property identifies the certificate -# of the OCSP responder when the default does not apply. Its value is a string -# distinguished name (defined in RFC 2253) which identifies a certificate in -# the set of certificates supplied during cert path validation. When this -# property is set then the "ocsp.responderCertSerialNumber" property must also -# be set. When the "ocsp.responderCertSubjectName" property is set then this -# property is ignored. -# -# Example, -# ocsp.responderCertIssuerName=CN=Enterprise CA, O=XYZ Corp - -# -# Serial number of the OCSP responder's certificate -# -# By default, the certificate of the OCSP responder is that of the issuer -# of the certificate being validated. This property identifies the certificate -# of the OCSP responder when the default does not apply. Its value is a string -# of hexadecimal digits (colon or space separators may be present) which -# identifies a certificate in the set of certificates supplied during cert path -# validation. When this property is set then the "ocsp.responderCertIssuerName" -# property must also be set. When the "ocsp.responderCertSubjectName" property -# is set then this property is ignored. -# -# Example, -# ocsp.responderCertSerialNumber=2A:FF:00 - -# -# Policy for failed Kerberos KDC lookups: -# -# When a KDC is unavailable (network error, service failure, etc), it is -# put inside a secondary list and accessed less often for future requests. The -# value (case-insensitive) for this policy can be: -# -# tryLast -# KDCs in the secondary list are always tried after those not on the list. -# -# tryLess[:max_retries,timeout] -# KDCs in the secondary list are still tried by their order in the -# configuration, but with smaller max_retries and timeout values. -# max_retries and timeout are optional numerical parameters (default 1 and -# 5000, which means once and 5 seconds). Please note that if any of the -# values defined here are more than what is defined in krb5.conf, it will be -# ignored. -# -# Whenever a KDC is detected as available, it is removed from the secondary -# list. The secondary list is reset when krb5.conf is reloaded. You can add -# refreshKrb5Config=true to a JAAS configuration file so that krb5.conf is -# reloaded whenever a JAAS authentication is attempted. -# -# Example, -# krb5.kdc.bad.policy = tryLast -# krb5.kdc.bad.policy = tryLess:2,2000 -# -krb5.kdc.bad.policy = tryLast - -# -# Kerberos cross-realm referrals (RFC 6806) -# -# OpenJDK's Kerberos client supports cross-realm referrals as defined in -# RFC 6806. This allows to setup more dynamic environments in which clients -# do not need to know in advance how to reach the realm of a target principal -# (either a user or service). -# -# When a client issues an AS or a TGS request, the "canonicalize" option -# is set to announce support of this feature. A KDC server may fulfill the -# request or reply referring the client to a different one. If referred, -# the client will issue a new request and the cycle repeats. -# -# In addition to referrals, the "canonicalize" option allows the KDC server -# to change the client name in response to an AS request. For security reasons, -# RFC 6806 (section 11) FAST scheme is enforced. -# -# Disable Kerberos cross-realm referrals. Value may be overwritten with a -# System property (-Dsun.security.krb5.disableReferrals). -sun.security.krb5.disableReferrals=false - -# Maximum number of AS or TGS referrals to avoid infinite loops. Value may -# be overwritten with a System property (-Dsun.security.krb5.maxReferrals). -sun.security.krb5.maxReferrals=5 - -# -# This property contains a list of disabled EC Named Curves that can be included -# in the jdk.[tls|certpath|jar].disabledAlgorithms properties. To include this -# list in any of the disabledAlgorithms properties, add the property name as -# an entry. -#jdk.disabled.namedCurves= - -# -# Algorithm restrictions for certification path (CertPath) processing -# -# In some environments, certain algorithms or key lengths may be undesirable -# for certification path building and validation. For example, "MD2" is -# generally no longer considered to be a secure hash algorithm. This section -# describes the mechanism for disabling algorithms based on algorithm name -# and/or key length. This includes algorithms used in certificates, as well -# as revocation information such as CRLs and signed OCSP Responses. -# The syntax of the disabled algorithm string is described as follows: -# DisabledAlgorithms: -# " DisabledAlgorithm { , DisabledAlgorithm } " -# -# DisabledAlgorithm: -# AlgorithmName [Constraint] { '&' Constraint } | IncludeProperty -# -# AlgorithmName: -# (see below) -# -# Constraint: -# KeySizeConstraint | CAConstraint | DenyAfterConstraint | -# UsageConstraint -# -# KeySizeConstraint: -# keySize Operator KeyLength -# -# Operator: -# <= | < | == | != | >= | > -# -# KeyLength: -# Integer value of the algorithm's key length in bits -# -# CAConstraint: -# jdkCA -# -# DenyAfterConstraint: -# denyAfter YYYY-MM-DD -# -# UsageConstraint: -# usage [TLSServer] [TLSClient] [SignedJAR] -# -# IncludeProperty: -# include -# -# The "AlgorithmName" is the standard algorithm name of the disabled -# algorithm. See the Java Security Standard Algorithm Names Specification -# for information about Standard Algorithm Names. Matching is -# performed using a case-insensitive sub-element matching rule. (For -# example, in "SHA1withECDSA" the sub-elements are "SHA1" for hashing and -# "ECDSA" for signatures.) If the assertion "AlgorithmName" is a -# sub-element of the certificate algorithm name, the algorithm will be -# rejected during certification path building and validation. For example, -# the assertion algorithm name "DSA" will disable all certificate algorithms -# that rely on DSA, such as NONEwithDSA, SHA1withDSA. However, the assertion -# will not disable algorithms related to "ECDSA". -# -# The "IncludeProperty" allows a implementation-defined security property that -# can be included in the disabledAlgorithms properties. These properties are -# to help manage common actions easier across multiple disabledAlgorithm -# properties. -# There is one defined security property: jdk.disabled.namedCurves -# See the property for more specific details. -# -# -# A "Constraint" defines restrictions on the keys and/or certificates for -# a specified AlgorithmName: -# -# KeySizeConstraint: -# keySize Operator KeyLength -# The constraint requires a key of a valid size range if the -# "AlgorithmName" is of a key algorithm. The "KeyLength" indicates -# the key size specified in number of bits. For example, -# "RSA keySize <= 1024" indicates that any RSA key with key size less -# than or equal to 1024 bits should be disabled, and -# "RSA keySize < 1024, RSA keySize > 2048" indicates that any RSA key -# with key size less than 1024 or greater than 2048 should be disabled. -# This constraint is only used on algorithms that have a key size. -# -# CAConstraint: -# jdkCA -# This constraint prohibits the specified algorithm only if the -# algorithm is used in a certificate chain that terminates at a marked -# trust anchor in the lib/security/cacerts keystore. If the jdkCA -# constraint is not set, then all chains using the specified algorithm -# are restricted. jdkCA may only be used once in a DisabledAlgorithm -# expression. -# Example: To apply this constraint to SHA-1 certificates, include -# the following: "SHA1 jdkCA" -# -# DenyAfterConstraint: -# denyAfter YYYY-MM-DD -# This constraint prohibits a certificate with the specified algorithm -# from being used after the date regardless of the certificate's -# validity. JAR files that are signed and timestamped before the -# constraint date with certificates containing the disabled algorithm -# will not be restricted. The date is processed in the UTC timezone. -# This constraint can only be used once in a DisabledAlgorithm -# expression. -# Example: To deny usage of RSA 2048 bit certificates after Feb 3 2020, -# use the following: "RSA keySize == 2048 & denyAfter 2020-02-03" -# -# UsageConstraint: -# usage [TLSServer] [TLSClient] [SignedJAR] -# This constraint prohibits the specified algorithm for -# a specified usage. This should be used when disabling an algorithm -# for all usages is not practical. 'TLSServer' restricts the algorithm -# in TLS server certificate chains when server authentication is -# performed. 'TLSClient' restricts the algorithm in TLS client -# certificate chains when client authentication is performed. -# 'SignedJAR' constrains use of certificates in signed jar files. -# The usage type follows the keyword and more than one usage type can -# be specified with a whitespace delimiter. -# Example: "SHA1 usage TLSServer TLSClient" -# -# When an algorithm must satisfy more than one constraint, it must be -# delimited by an ampersand '&'. For example, to restrict certificates in a -# chain that terminate at a distribution provided trust anchor and contain -# RSA keys that are less than or equal to 1024 bits, add the following -# constraint: "RSA keySize <= 1024 & jdkCA". -# -# All DisabledAlgorithms expressions are processed in the order defined in the -# property. This requires lower keysize constraints to be specified -# before larger keysize constraints of the same algorithm. For example: -# "RSA keySize < 1024 & jdkCA, RSA keySize < 2048". -# -# Note: The algorithm restrictions do not apply to trust anchors or -# self-signed certificates. -# -# Note: This property is currently used by Oracle's PKIX implementation. It -# is not guaranteed to be examined and used by other implementations. -# -# Example: -# jdk.certpath.disabledAlgorithms=MD2, DSA, RSA keySize < 2048 -# -# -jdk.certpath.disabledAlgorithms=MD2, MD5, SHA1 jdkCA & usage TLSServer, \ - RSA keySize < 1024, DSA keySize < 1024, EC keySize < 224, \ - SHA1 usage SignedJAR & denyAfter 2019-01-01 - -# -# Legacy algorithms for certification path (CertPath) processing and -# signed JAR files. -# -# In some environments, a certain algorithm or key length may be undesirable -# but is not yet disabled. -# -# Tools such as keytool and jarsigner may emit warnings when these legacy -# algorithms are used. See the man pages for those tools for more information. -# -# The syntax is the same as the "jdk.certpath.disabledAlgorithms" and -# "jdk.jar.disabledAlgorithms" security properties. -# -# Note: This property is currently used by the JDK Reference -# implementation. It is not guaranteed to be examined and used by other -# implementations. - -jdk.security.legacyAlgorithms=SHA1, \ - RSA keySize < 2048, DSA keySize < 2048 - -# -# Algorithm restrictions for signed JAR files -# -# In some environments, certain algorithms or key lengths may be undesirable -# for signed JAR validation. For example, "MD2" is generally no longer -# considered to be a secure hash algorithm. This section describes the -# mechanism for disabling algorithms based on algorithm name and/or key length. -# JARs signed with any of the disabled algorithms or key sizes will be treated -# as unsigned. -# -# The syntax of the disabled algorithm string is described as follows: -# DisabledAlgorithms: -# " DisabledAlgorithm { , DisabledAlgorithm } " -# -# DisabledAlgorithm: -# AlgorithmName [Constraint] { '&' Constraint } -# -# AlgorithmName: -# (see below) -# -# Constraint: -# KeySizeConstraint | DenyAfterConstraint -# -# KeySizeConstraint: -# keySize Operator KeyLength -# -# DenyAfterConstraint: -# denyAfter YYYY-MM-DD -# -# Operator: -# <= | < | == | != | >= | > -# -# KeyLength: -# Integer value of the algorithm's key length in bits -# -# Note: This property is currently used by the JDK Reference -# implementation. It is not guaranteed to be examined and used by other -# implementations. -# -# See "jdk.certpath.disabledAlgorithms" for syntax descriptions. -# -jdk.jar.disabledAlgorithms=MD2, MD5, RSA keySize < 1024, \ - DSA keySize < 1024, SHA1 denyAfter 2019-01-01 - -# -# Algorithm restrictions for Secure Socket Layer/Transport Layer Security -# (SSL/TLS/DTLS) processing -# -# In some environments, certain algorithms or key lengths may be undesirable -# when using SSL/TLS/DTLS. This section describes the mechanism for disabling -# algorithms during SSL/TLS/DTLS security parameters negotiation, including -# protocol version negotiation, cipher suites selection, named groups -# selection, signature schemes selection, peer authentication and key -# exchange mechanisms. -# -# Disabled algorithms will not be negotiated for SSL/TLS connections, even -# if they are enabled explicitly in an application. -# -# For PKI-based peer authentication and key exchange mechanisms, this list -# of disabled algorithms will also be checked during certification path -# building and validation, including algorithms used in certificates, as -# well as revocation information such as CRLs and signed OCSP Responses. -# This is in addition to the jdk.certpath.disabledAlgorithms property above. -# -# See the specification of "jdk.certpath.disabledAlgorithms" for the -# syntax of the disabled algorithm string. -# -# Note: The algorithm restrictions do not apply to trust anchors or -# self-signed certificates. -# -# Note: This property is currently used by the JDK Reference implementation. -# It is not guaranteed to be examined and used by other implementations. -# -# Example: -# jdk.tls.disabledAlgorithms=MD5, SSLv3, DSA, RSA keySize < 2048, \ -# rsa_pkcs1_sha1, secp224r1 -jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1, RC4, DES, MD5withRSA, \ - DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL - -# -# Legacy algorithms for Secure Socket Layer/Transport Layer Security (SSL/TLS) -# processing in JSSE implementation. -# -# In some environments, a certain algorithm may be undesirable but it -# cannot be disabled because of its use in legacy applications. Legacy -# algorithms may still be supported, but applications should not use them -# as the security strength of legacy algorithms are usually not strong enough -# in practice. -# -# During SSL/TLS security parameters negotiation, legacy algorithms will -# not be negotiated unless there are no other candidates. -# -# The syntax of the legacy algorithms string is described as this Java -# BNF-style: -# LegacyAlgorithms: -# " LegacyAlgorithm { , LegacyAlgorithm } " -# -# LegacyAlgorithm: -# AlgorithmName (standard JSSE algorithm name) -# -# See the specification of security property "jdk.certpath.disabledAlgorithms" -# for the syntax and description of the "AlgorithmName" notation. -# -# Per SSL/TLS specifications, cipher suites have the form: -# SSL_KeyExchangeAlg_WITH_CipherAlg_MacAlg -# or -# TLS_KeyExchangeAlg_WITH_CipherAlg_MacAlg -# -# For example, the cipher suite TLS_RSA_WITH_AES_128_CBC_SHA uses RSA as the -# key exchange algorithm, AES_128_CBC (128 bits AES cipher algorithm in CBC -# mode) as the cipher (encryption) algorithm, and SHA-1 as the message digest -# algorithm for HMAC. -# -# The LegacyAlgorithm can be one of the following standard algorithm names: -# 1. JSSE cipher suite name, e.g., TLS_RSA_WITH_AES_128_CBC_SHA -# 2. JSSE key exchange algorithm name, e.g., RSA -# 3. JSSE cipher (encryption) algorithm name, e.g., AES_128_CBC -# 4. JSSE message digest algorithm name, e.g., SHA -# -# See SSL/TLS specifications and the Java Security Standard Algorithm Names -# Specification for information about the algorithm names. -# -# Note: If a legacy algorithm is also restricted through the -# jdk.tls.disabledAlgorithms property or the -# java.security.AlgorithmConstraints API (See -# javax.net.ssl.SSLParameters.setAlgorithmConstraints()), -# then the algorithm is completely disabled and will not be negotiated. -# -# Note: This property is currently used by the JDK Reference implementation. -# It is not guaranteed to be examined and used by other implementations. -# There is no guarantee the property will continue to exist or be of the -# same syntax in future releases. -# -# Example: -# jdk.tls.legacyAlgorithms=DH_anon, DES_CBC, SSL_RSA_WITH_RC4_128_MD5 -# -jdk.tls.legacyAlgorithms=NULL, anon, RC4, DES, 3DES_EDE_CBC - -# -# The pre-defined default finite field Diffie-Hellman ephemeral (DHE) -# parameters for Transport Layer Security (SSL/TLS/DTLS) processing. -# -# In traditional SSL/TLS/DTLS connections where finite field DHE parameters -# negotiation mechanism is not used, the server offers the client group -# parameters, base generator g and prime modulus p, for DHE key exchange. -# It is recommended to use dynamic group parameters. This property defines -# a mechanism that allows you to specify custom group parameters. -# -# The syntax of this property string is described as this Java BNF-style: -# DefaultDHEParameters: -# DefinedDHEParameters { , DefinedDHEParameters } -# -# DefinedDHEParameters: -# "{" DHEPrimeModulus , DHEBaseGenerator "}" -# -# DHEPrimeModulus: -# HexadecimalDigits -# -# DHEBaseGenerator: -# HexadecimalDigits -# -# HexadecimalDigits: -# HexadecimalDigit { HexadecimalDigit } -# -# HexadecimalDigit: one of -# 0 1 2 3 4 5 6 7 8 9 A B C D E F a b c d e f -# -# Whitespace characters are ignored. -# -# The "DefinedDHEParameters" defines the custom group parameters, prime -# modulus p and base generator g, for a particular size of prime modulus p. -# The "DHEPrimeModulus" defines the hexadecimal prime modulus p, and the -# "DHEBaseGenerator" defines the hexadecimal base generator g of a group -# parameter. It is recommended to use safe primes for the custom group -# parameters. -# -# If this property is not defined or the value is empty, the underlying JSSE -# provider's default group parameter is used for each connection. -# -# If the property value does not follow the grammar, or a particular group -# parameter is not valid, the connection will fall back and use the -# underlying JSSE provider's default group parameter. -# -# Note: This property is currently used by OpenJDK's JSSE implementation. It -# is not guaranteed to be examined and used by other implementations. -# -# Example: -# jdk.tls.server.defaultDHEParameters= -# { \ -# FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1 \ -# 29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD \ -# EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245 \ -# E485B576 625E7EC6 F44C42E9 A637ED6B 0BFF5CB6 F406B7ED \ -# EE386BFB 5A899FA5 AE9F2411 7C4B1FE6 49286651 ECE65381 \ -# FFFFFFFF FFFFFFFF, 2} - -# -# TLS key limits on symmetric cryptographic algorithms -# -# This security property sets limits on algorithms key usage in TLS 1.3. -# When the amount of data encrypted exceeds the algorithm value listed below, -# a KeyUpdate message will trigger a key change. This is for symmetric ciphers -# with TLS 1.3 only. -# -# The syntax for the property is described below: -# KeyLimits: -# " KeyLimit { , KeyLimit } " -# -# WeakKeyLimit: -# AlgorithmName Action Length -# -# AlgorithmName: -# A full algorithm transformation. -# -# Action: -# KeyUpdate -# -# Length: -# The amount of encrypted data in a session before the Action occurs -# This value may be an integer value in bytes, or as a power of two, 2^29. -# -# KeyUpdate: -# The TLS 1.3 KeyUpdate handshake process begins when the Length amount -# is fulfilled. -# -# Note: This property is currently used by OpenJDK's JSSE implementation. It -# is not guaranteed to be examined and used by other implementations. -# -jdk.tls.keyLimits=AES/GCM/NoPadding KeyUpdate 2^37 - -# -# Cryptographic Jurisdiction Policy defaults -# -# Import and export control rules on cryptographic software vary from -# country to country. By default, Java provides two different sets of -# cryptographic policy files[1]: -# -# unlimited: These policy files contain no restrictions on cryptographic -# strengths or algorithms -# -# limited: These policy files contain more restricted cryptographic -# strengths -# -# The default setting is determined by the value of the "crypto.policy" -# Security property below. If your country or usage requires the -# traditional restrictive policy, the "limited" Java cryptographic -# policy is still available and may be appropriate for your environment. -# -# If you have restrictions that do not fit either use case mentioned -# above, Java provides the capability to customize these policy files. -# The "crypto.policy" security property points to a subdirectory -# within /conf/security/policy/ which can be customized. -# Please see the /conf/security/policy/README.txt file or consult -# the Java Security Guide/JCA documentation for more information. -# -# YOU ARE ADVISED TO CONSULT YOUR EXPORT/IMPORT CONTROL COUNSEL OR ATTORNEY -# TO DETERMINE THE EXACT REQUIREMENTS. -# -# [1] Please note that the JCE for Java SE, including the JCE framework, -# cryptographic policy files, and standard JCE providers provided with -# the Java SE, have been reviewed and approved for export as mass market -# encryption item by the US Bureau of Industry and Security. -# -# Note: This property is currently used by the JDK Reference implementation. -# It is not guaranteed to be examined and used by other implementations. -# -crypto.policy=unlimited - -# -# The policy for the XML Signature secure validation mode. Validation of -# XML Signatures that violate any of these constraints will fail. The -# mode is enforced by default. The mode can be disabled by setting the -# property "org.jcp.xml.dsig.secureValidation" to Boolean.FALSE with the -# javax.xml.crypto.XMLCryptoContext.setProperty() method. -# -# Policy: -# Constraint {"," Constraint } -# Constraint: -# AlgConstraint | MaxTransformsConstraint | MaxReferencesConstraint | -# ReferenceUriSchemeConstraint | KeySizeConstraint | OtherConstraint -# AlgConstraint -# "disallowAlg" Uri -# MaxTransformsConstraint: -# "maxTransforms" Integer -# MaxReferencesConstraint: -# "maxReferences" Integer -# ReferenceUriSchemeConstraint: -# "disallowReferenceUriSchemes" String { String } -# KeySizeConstraint: -# "minKeySize" KeyAlg Integer -# OtherConstraint: -# "noDuplicateIds" | "noRetrievalMethodLoops" -# -# For AlgConstraint, Uri is the algorithm URI String that is not allowed. -# See the XML Signature Recommendation for more information on algorithm -# URI Identifiers. For KeySizeConstraint, KeyAlg is the standard algorithm -# name of the key type (ex: "RSA"). If the MaxTransformsConstraint, -# MaxReferencesConstraint or KeySizeConstraint (for the same key type) is -# specified more than once, only the last entry is enforced. -# -# Note: This property is currently used by the JDK Reference implementation. -# It is not guaranteed to be examined and used by other implementations. -# -jdk.xml.dsig.secureValidationPolicy=\ - disallowAlg http://www.w3.org/TR/1999/REC-xslt-19991116,\ - disallowAlg http://www.w3.org/2001/04/xmldsig-more#rsa-md5,\ - disallowAlg http://www.w3.org/2001/04/xmldsig-more#hmac-md5,\ - disallowAlg http://www.w3.org/2001/04/xmldsig-more#md5,\ - disallowAlg http://www.w3.org/2000/09/xmldsig#sha1,\ - disallowAlg http://www.w3.org/2000/09/xmldsig#dsa-sha1,\ - disallowAlg http://www.w3.org/2000/09/xmldsig#rsa-sha1,\ - disallowAlg http://www.w3.org/2007/05/xmldsig-more#sha1-rsa-MGF1,\ - disallowAlg http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha1,\ - maxTransforms 5,\ - maxReferences 30,\ - disallowReferenceUriSchemes file http https,\ - minKeySize RSA 1024,\ - minKeySize DSA 1024,\ - minKeySize EC 224,\ - noDuplicateIds,\ - noRetrievalMethodLoops - - -# -# Deserialization JVM-wide filter factory -# -# A filter factory class name is used to configure the JVM-wide filter factory. -# The class must be public, must have a public zero-argument constructor, implement the -# java.util.function.BinaryOperator interface, provide its -# implementation and be accessible via the application class loader. -# A builtin filter factory is used if no filter factory is defined. -# See java.io.ObjectInputFilter.Config for more information. -# -# If the system property jdk.serialFilterFactory is also specified, it supersedes -# the security property value defined here. -# -#jdk.serialFilterFactory= - -# -# Deserialization JVM-wide filter -# -# A filter, if configured, is used by the filter factory to provide the filter used by -# java.io.ObjectInputStream during deserialization to check the contents of the stream. -# A filter is configured as a sequence of patterns, each pattern is either -# matched against the name of a class in the stream or defines a limit. -# Patterns are separated by ";" (semicolon). -# Whitespace is significant and is considered part of the pattern. -# -# If the system property jdk.serialFilter is also specified, it supersedes -# the security property value defined here. -# -# If a pattern includes a "=", it sets a limit. -# If a limit appears more than once the last value is used. -# Limits are checked before classes regardless of the order in the -# sequence of patterns. -# If any of the limits are exceeded, the filter status is REJECTED. -# -# maxdepth=value - the maximum depth of a graph -# maxrefs=value - the maximum number of internal references -# maxbytes=value - the maximum number of bytes in the input stream -# maxarray=value - the maximum array length allowed -# -# Other patterns, from left to right, match the class or package name as -# returned from Class.getName. -# If the class is an array type, the class or package to be matched is the -# element type. -# Arrays of any number of dimensions are treated the same as the element type. -# For example, a pattern of "!example.Foo", rejects creation of any instance or -# array of example.Foo. -# -# If the pattern starts with "!", the status is REJECTED if the remaining -# pattern is matched; otherwise the status is ALLOWED if the pattern matches. -# If the pattern contains "/", the non-empty prefix up to the "/" is the -# module name; -# if the module name matches the module name of the class then -# the remaining pattern is matched with the class name. -# If there is no "/", the module name is not compared. -# If the pattern ends with ".**" it matches any class in the package and all -# subpackages. -# If the pattern ends with ".*" it matches any class in the package. -# If the pattern ends with "*", it matches any class with the pattern as a -# prefix. -# If the pattern is equal to the class name, it matches. -# Otherwise, the status is UNDECIDED. -# -#jdk.serialFilter=pattern;pattern - -# -# RMI Registry Serial Filter -# -# The filter pattern uses the same format as jdk.serialFilter. -# This filter can override the builtin filter if additional types need to be -# allowed or rejected from the RMI Registry or to decrease limits but not -# to increase limits. -# If the limits (maxdepth, maxrefs, or maxbytes) are exceeded, the object is rejected. -# -# Each non-array type is allowed or rejected if it matches one of the patterns, -# evaluated from left to right, and is otherwise allowed. Arrays of any -# component type, including subarrays and arrays of primitives, are allowed. -# -# Array construction of any component type, including subarrays and arrays of -# primitives, are allowed unless the length is greater than the maxarray limit. -# The filter is applied to each array element. -# -# Note: This property is currently used by the JDK Reference implementation. -# It is not guaranteed to be examined and used by other implementations. -# -# The built-in filter allows subclasses of allowed classes and -# can approximately be represented as the pattern: -# -#sun.rmi.registry.registryFilter=\ -# maxarray=1000000;\ -# maxdepth=20;\ -# java.lang.String;\ -# java.lang.Number;\ -# java.lang.reflect.Proxy;\ -# java.rmi.Remote;\ -# sun.rmi.server.UnicastRef;\ -# sun.rmi.server.RMIClientSocketFactory;\ -# sun.rmi.server.RMIServerSocketFactory;\ -# java.rmi.server.UID -# -# RMI Distributed Garbage Collector (DGC) Serial Filter -# -# The filter pattern uses the same format as jdk.serialFilter. -# This filter can override the builtin filter if additional types need to be -# allowed or rejected from the RMI DGC. -# -# Note: This property is currently used by the JDK Reference implementation. -# It is not guaranteed to be examined and used by other implementations. -# -# The builtin DGC filter can approximately be represented as the filter pattern: -# -#sun.rmi.transport.dgcFilter=\ -# java.rmi.server.ObjID;\ -# java.rmi.server.UID;\ -# java.rmi.dgc.VMID;\ -# java.rmi.dgc.Lease;\ -# maxdepth=5;maxarray=10000 - -# -# JCEKS Encrypted Key Serial Filter -# -# This filter, if configured, is used by the JCEKS KeyStore during the -# deserialization of the encrypted Key object stored inside a key entry. -# If not configured or the filter result is UNDECIDED (i.e. none of the patterns -# matches), the filter configured by jdk.serialFilter will be consulted. -# -# If the system property jceks.key.serialFilter is also specified, it supersedes -# the security property value defined here. -# -# The filter pattern uses the same format as jdk.serialFilter. The default -# pattern allows java.lang.Enum, java.security.KeyRep, java.security.KeyRep$Type, -# and javax.crypto.spec.SecretKeySpec and rejects all the others. -jceks.key.serialFilter = java.base/java.lang.Enum;java.base/java.security.KeyRep;\ - java.base/java.security.KeyRep$Type;java.base/javax.crypto.spec.SecretKeySpec;!* - -# The iteration count used for password-based encryption (PBE) in JCEKS -# keystores. Values in the range 10000 to 5000000 are considered valid. -# If the value is out of this range, or is not a number, or is unspecified; -# a default of 200000 is used. -# -# If the system property jdk.jceks.iterationCount is also specified, it -# supersedes the security property value defined here. -# -#jdk.jceks.iterationCount = 200000 - -# -# PKCS12 KeyStore properties -# -# The following properties, if configured, are used by the PKCS12 KeyStore -# implementation during the creation of a new keystore. Several of the -# properties may also be used when modifying an existing keystore. The -# properties can be overridden by a KeyStore API that specifies its own -# algorithms and parameters. -# -# If an existing PKCS12 keystore is loaded and then stored, the algorithm and -# parameter used to generate the existing Mac will be reused. If the existing -# keystore does not have a Mac, no Mac will be created while storing. If there -# is at least one certificate in the existing keystore, the algorithm and -# parameters used to encrypt the last certificate in the existing keystore will -# be reused to encrypt all certificates while storing. If the last certificate -# in the existing keystore is not encrypted, all certificates will be stored -# unencrypted. If there is no certificate in the existing keystore, any newly -# added certificate will be encrypted (or stored unencrypted if algorithm -# value is "NONE") using the "keystore.pkcs12.certProtectionAlgorithm" and -# "keystore.pkcs12.certPbeIterationCount" values defined here. Existing private -# and secret key(s) are not changed. Newly set private and secret key(s) will -# be encrypted using the "keystore.pkcs12.keyProtectionAlgorithm" and -# "keystore.pkcs12.keyPbeIterationCount" values defined here. -# -# In order to apply new algorithms and parameters to all entries in an -# existing keystore, one can create a new keystore and add entries in the -# existing keystore into the new keystore. This can be achieved by calling the -# "keytool -importkeystore" command. -# -# If a system property of the same name is also specified, it supersedes the -# security property value defined here. -# -# If the property is set to an illegal value, -# an iteration count that is not a positive integer, or an unknown algorithm -# name, an exception will be thrown when the property is used. -# If the property is not set or empty, a default value will be used. -# -# Note: These properties are currently used by the JDK Reference implementation. -# They are not guaranteed to be examined and used by other implementations. - -# The algorithm used to encrypt a certificate. This can be any non-Hmac PBE -# algorithm defined in the Cipher section of the Java Security Standard -# Algorithm Names Specification. When set to "NONE", the certificate -# is not encrypted. The default value is "PBEWithHmacSHA256AndAES_256". -#keystore.pkcs12.certProtectionAlgorithm = PBEWithHmacSHA256AndAES_256 - -# The iteration count used by the PBE algorithm when encrypting a certificate. -# This value must be a positive integer. The default value is 10000. -#keystore.pkcs12.certPbeIterationCount = 10000 - -# The algorithm used to encrypt a private key or secret key. This can be -# any non-Hmac PBE algorithm defined in the Cipher section of the Java -# Security Standard Algorithm Names Specification. The value must not be "NONE". -# The default value is "PBEWithHmacSHA256AndAES_256". -#keystore.pkcs12.keyProtectionAlgorithm = PBEWithHmacSHA256AndAES_256 - -# The iteration count used by the PBE algorithm when encrypting a private key -# or a secret key. This value must be a positive integer. The default value -# is 10000. -#keystore.pkcs12.keyPbeIterationCount = 10000 - -# The algorithm used to calculate the optional MacData at the end of a PKCS12 -# file. This can be any HmacPBE algorithm defined in the Mac section of the -# Java Security Standard Algorithm Names Specification. When set to "NONE", -# no Mac is generated. The default value is "HmacPBESHA256". -#keystore.pkcs12.macAlgorithm = HmacPBESHA256 - -# The iteration count used by the MacData algorithm. This value must be a -# positive integer. The default value is 10000. -#keystore.pkcs12.macIterationCount = 10000 - -# -# Enhanced exception message information -# -# By default, exception messages should not include potentially sensitive -# information such as file names, host names, or port numbers. This property -# accepts one or more comma separated values, each of which represents a -# category of enhanced exception message information to enable. Values are -# case-insensitive. Leading and trailing whitespaces, surrounding each value, -# are ignored. Unknown values are ignored. -# -# NOTE: Use caution before setting this property. Setting this property -# exposes sensitive information in Exceptions, which could, for example, -# propagate to untrusted code or be emitted in stack traces that are -# inadvertently disclosed and made accessible over a public network. -# -# The categories are: -# -# hostInfo - IOExceptions thrown by java.net.Socket and the socket types in the -# java.nio.channels package will contain enhanced exception -# message information -# -# jar - enables more detailed information in the IOExceptions thrown -# by classes in the java.util.jar package -# -# The property setting in this file can be overridden by a system property of -# the same name, with the same syntax and possible values. -# -#jdk.includeInExceptions=hostInfo,jar - -# -# Disabled mechanisms for the Simple Authentication and Security Layer (SASL) -# -# Disabled mechanisms will not be negotiated by both SASL clients and servers. -# These mechanisms will be ignored if they are specified in the "mechanisms" -# argument of "Sasl.createSaslClient" or the "mechanism" argument of -# "Sasl.createSaslServer". -# -# The value of this property is a comma-separated list of SASL mechanisms. -# The mechanisms are case-sensitive. Whitespaces around the commas are ignored. -# -# Note: This property is currently used by the JDK Reference implementation. -# It is not guaranteed to be examined and used by other implementations. -# -# Example: -# jdk.sasl.disabledMechanisms=PLAIN, CRAM-MD5, DIGEST-MD5 -jdk.sasl.disabledMechanisms= - -# -# Policies for distrusting Certificate Authorities (CAs). -# -# This is a comma separated value of one or more case-sensitive strings, each -# of which represents a policy for determining if a CA should be distrusted. -# The supported values are: -# -# SYMANTEC_TLS : Distrust TLS Server certificates anchored by a Symantec -# root CA and issued after April 16, 2019 unless issued by one of the -# following subordinate CAs which have a later distrust date: -# 1. Apple IST CA 2 - G1, SHA-256 fingerprint: -# AC2B922ECFD5E01711772FEA8ED372DE9D1E2245FCE3F57A9CDBEC77296A424B -# Distrust after December 31, 2019. -# 2. Apple IST CA 8 - G1, SHA-256 fingerprint: -# A4FE7C7F15155F3F0AEF7AAA83CF6E06DEB97CA3F909DF920AC1490882D488ED -# Distrust after December 31, 2019. -# -# Leading and trailing whitespace surrounding each value are ignored. -# Unknown values are ignored. If the property is commented out or set to the -# empty String, no policies are enforced. -# -# Note: This property is currently used by the JDK Reference implementation. -# It is not guaranteed to be supported by other SE implementations. Also, this -# property does not override other security properties which can restrict -# certificates such as jdk.tls.disabledAlgorithms or -# jdk.certpath.disabledAlgorithms; those restrictions are still enforced even -# if this property is not enabled. -# -jdk.security.caDistrustPolicies=SYMANTEC_TLS - -# -# FilePermission path canonicalization -# -# This security property dictates how the path argument is processed and stored -# while constructing a FilePermission object. If the value is set to true, the -# path argument is canonicalized and FilePermission methods (such as implies, -# equals, and hashCode) are implemented based on this canonicalized result. -# Otherwise, the path argument is not canonicalized and FilePermission methods are -# implemented based on the original input. See the implementation note of the -# FilePermission class for more details. -# -# If a system property of the same name is also specified, it supersedes the -# security property value defined here. -# -# The default value for this property is false. -# -jdk.io.permissionsUseCanonicalPath=false - - -# -# Policies for the proxy_impersonator Kerberos ccache configuration entry -# -# The proxy_impersonator ccache configuration entry indicates that the ccache -# is a synthetic delegated credential for use with S4U2Proxy by an intermediate -# server. The ccache file should also contain the TGT of this server and -# an evidence ticket from the default principal of the ccache to this server. -# -# This security property determines how Java uses this configuration entry. -# There are 3 possible values: -# -# no-impersonate - Ignore this configuration entry, and always act as -# the owner of the TGT (if it exists). -# -# try-impersonate - Try impersonation when this configuration entry exists. -# If no matching TGT or evidence ticket is found, -# fallback to no-impersonate. -# -# always-impersonate - Always impersonate when this configuration entry exists. -# If no matching TGT or evidence ticket is found, -# no initial credential is read from the ccache. -# -# The default value is "always-impersonate". -# -# If a system property of the same name is also specified, it supersedes the -# security property value defined here. -# -#jdk.security.krb5.default.initiate.credential=always-impersonate - -# -# Trust Anchor Certificates - CA Basic Constraint check -# -# X.509 v3 certificates used as Trust Anchors (to validate signed code or TLS -# connections) must have the cA Basic Constraint field set to 'true'. Also, if -# they include a Key Usage extension, the keyCertSign bit must be set. These -# checks, enabled by default, can be disabled for backward-compatibility -# purposes with the jdk.security.allowNonCaAnchor System and Security -# properties. In the case that both properties are simultaneously set, the -# System value prevails. The default value of the property is "false". -# -#jdk.security.allowNonCaAnchor=true - -# -# The default Character set name (java.nio.charset.Charset.forName()) -# for converting TLS ALPN values between byte arrays and Strings. -# Prior versions of the JDK may use UTF-8 as the default charset. If -# you experience interoperability issues, setting this property to UTF-8 -# may help. -# -# jdk.tls.alpnCharset=UTF-8 -jdk.tls.alpnCharset=ISO_8859_1 - -# -# JNDI Object Factories Filter -# -# This filter is used by the JNDI runtime to control the set of object factory classes -# which will be allowed to instantiate objects from object references returned by -# naming/directory systems. The factory class named by the reference instance will be -# matched against this filter. The filter property supports pattern-based filter syntax -# with the same format as jdk.serialFilter. -# -# Each pattern is matched against the factory class name to allow or disallow it's -# instantiation. The access to a factory class is allowed unless the filter returns -# REJECTED. -# -# Note: This property is currently used by the JDK Reference implementation. -# It is not guaranteed to be examined and used by other implementations. -# -# If the system property jdk.jndi.object.factoriesFilter is also specified, it supersedes -# the security property value defined here. The default value of the property is "*". -# -# The default pattern value allows any object factory class specified by the reference -# instance to recreate the referenced object. -#jdk.jndi.object.factoriesFilter=* diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/README.txt b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/README.txt deleted file mode 100644 index fdf77d3..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/README.txt +++ /dev/null @@ -1,54 +0,0 @@ - - Java(TM) Cryptography Extension Policy Files - for the Java(TM) Platform, Standard Edition Runtime Environment - - README ------------------------------------------------------------------------- - -Import and export control rules on cryptographic software vary from -country to country. The Java Cryptography Extension (JCE) architecture -allows flexible cryptographic key strength to be configured via the -jurisdiction policy files which are referenced by the "crypto.policy" -security property in the /conf/security/java.security file. - -By default, Java provides two different sets of cryptographic policy -files: - - unlimited: These policy files contain no restrictions on cryptographic - strengths or algorithms - - limited: These policy files contain more restricted cryptographic - strengths - -These files reside in /conf/security/policy in the "unlimited" -or "limited" subdirectories respectively. - -Each subdirectory contains a complete policy configuration, -and subdirectories can be added/edited/removed to reflect your -import or export control product requirements. - -Within a subdirectory, the effective policy is the combined minimum -permissions of the grant statements in the file(s) matching the filename -pattern "default_*.policy". At least one grant is required. For example: - - limited = Export (all) + Import (limited) = Limited - unlimited = Export (all) + Import (all) = Unlimited - -The effective exemption policy is the combined minimum permissions -of the grant statements in the file(s) matching the filename pattern -"exempt_*.policy". Exemption grants are optional. For example: - - limited = grants exemption permissions, by which the - effective policy can be circumvented. - e.g. KeyRecovery/KeyEscrow/KeyWeakening. - -Please see the Java Cryptography Architecture (JCA) documentation for -additional information on these files and formats. - -YOU ARE ADVISED TO CONSULT YOUR EXPORT/IMPORT CONTROL COUNSEL OR ATTORNEY -TO DETERMINE THE EXACT REQUIREMENTS. - -Please note that the JCE for Java SE, including the JCE framework, -cryptographic policy files, and standard JCE providers provided with -the Java SE, have been reviewed and approved for export as mass market -encryption item by the US Bureau of Industry and Security. diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/limited/default_US_export.policy b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/limited/default_US_export.policy deleted file mode 100644 index 1f38934..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/limited/default_US_export.policy +++ /dev/null @@ -1,6 +0,0 @@ -// Default US Export policy file. - -grant { - // There is no restriction to any algorithms. - permission javax.crypto.CryptoAllPermission; -}; diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/limited/default_local.policy b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/limited/default_local.policy deleted file mode 100644 index 2a6d513..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/limited/default_local.policy +++ /dev/null @@ -1,14 +0,0 @@ -// Some countries have import limits on crypto strength. This policy file -// is worldwide importable. - -grant { - permission javax.crypto.CryptoPermission "DES", 64; - permission javax.crypto.CryptoPermission "DESede", *; - permission javax.crypto.CryptoPermission "RC2", 128, - "javax.crypto.spec.RC2ParameterSpec", 128; - permission javax.crypto.CryptoPermission "RC4", 128; - permission javax.crypto.CryptoPermission "RC5", 128, - "javax.crypto.spec.RC5ParameterSpec", *, 12, *; - permission javax.crypto.CryptoPermission "RSA", *; - permission javax.crypto.CryptoPermission *, 128; -}; diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/limited/exempt_local.policy b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/limited/exempt_local.policy deleted file mode 100644 index 9dd5b91..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/limited/exempt_local.policy +++ /dev/null @@ -1,13 +0,0 @@ -// Some countries have import limits on crypto strength, but may allow for -// these exemptions if the exemption mechanism is used. - -grant { - // There is no restriction to any algorithms if KeyRecovery is enforced. - permission javax.crypto.CryptoPermission *, "KeyRecovery"; - - // There is no restriction to any algorithms if KeyEscrow is enforced. - permission javax.crypto.CryptoPermission *, "KeyEscrow"; - - // There is no restriction to any algorithms if KeyWeakening is enforced. - permission javax.crypto.CryptoPermission *, "KeyWeakening"; -}; diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/unlimited/default_US_export.policy b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/unlimited/default_US_export.policy deleted file mode 100644 index 1f38934..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/unlimited/default_US_export.policy +++ /dev/null @@ -1,6 +0,0 @@ -// Default US Export policy file. - -grant { - // There is no restriction to any algorithms. - permission javax.crypto.CryptoAllPermission; -}; diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/unlimited/default_local.policy b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/unlimited/default_local.policy deleted file mode 100644 index 2b907e2..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/security/policy/unlimited/default_local.policy +++ /dev/null @@ -1,6 +0,0 @@ -// Country-specific policy file for countries with no limits on crypto strength. - -grant { - // There is no restriction to any algorithms. - permission javax.crypto.CryptoAllPermission; -}; diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/sound.properties b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/sound.properties deleted file mode 100644 index 68309d1..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/conf/sound.properties +++ /dev/null @@ -1,39 +0,0 @@ -############################################################ -# Sound Configuration File -############################################################ -# -# This properties file is used to specify default service -# providers for javax.sound.midi.MidiSystem and -# javax.sound.sampled.AudioSystem. -# -# The following keys are recognized by MidiSystem methods: -# -# javax.sound.midi.Receiver -# javax.sound.midi.Sequencer -# javax.sound.midi.Synthesizer -# javax.sound.midi.Transmitter -# -# The following keys are recognized by AudioSystem methods: -# -# javax.sound.sampled.Clip -# javax.sound.sampled.Port -# javax.sound.sampled.SourceDataLine -# javax.sound.sampled.TargetDataLine -# -# The values specify the full class name of the service -# provider, or the device name. -# -# See the class descriptions for details. -# -# Example 1: -# Use MyDeviceProvider as default for SourceDataLines: -# javax.sound.sampled.SourceDataLine=com.xyz.MyDeviceProvider -# -# Example 2: -# Specify the default Synthesizer by its name "InternalSynth". -# javax.sound.midi.Synthesizer=#InternalSynth -# -# Example 3: -# Specify the default Receiver by provider and name: -# javax.sound.midi.Receiver=com.sun.media.sound.MidiProvider#SunMIDI1 -# diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/ADDITIONAL_LICENSE_INFO b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/ADDITIONAL_LICENSE_INFO deleted file mode 100644 index ff700cd..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/ADDITIONAL_LICENSE_INFO +++ /dev/null @@ -1,37 +0,0 @@ - ADDITIONAL INFORMATION ABOUT LICENSING - -Certain files distributed by Oracle America, Inc. and/or its affiliates are -subject to the following clarification and special exception to the GPLv2, -based on the GNU Project exception for its Classpath libraries, known as the -GNU Classpath Exception. - -Note that Oracle includes multiple, independent programs in this software -package. Some of those programs are provided under licenses deemed -incompatible with the GPLv2 by the Free Software Foundation and others. -For example, the package includes programs licensed under the Apache -License, Version 2.0 and may include FreeType. Such programs are licensed -to you under their original licenses. - -Oracle facilitates your further distribution of this package by adding the -Classpath Exception to the necessary parts of its GPLv2 code, which permits -you to use that code in combination with other independent modules not -licensed under the GPLv2. However, note that this would not permit you to -commingle code under an incompatible license with Oracle's GPLv2 licensed -code by, for example, cutting and pasting such code into a file also -containing Oracle's GPLv2 licensed code and then distributing the result. - -Additionally, if you were to remove the Classpath Exception from any of the -files to which it applies and distribute the result, you would likely be -required to license some or all of the other code in that distribution under -the GPLv2 as well, and since the GPLv2 is incompatible with the license terms -of some items included in the distribution by Oracle, removing the Classpath -Exception could therefore effectively compromise your ability to further -distribute the package. - -Failing to distribute notices associated with some files may also create -unexpected legal consequences. - -Proceed with caution and we recommend that you obtain the advice of a lawyer -skilled in open source matters before removing the Classpath Exception or -making modifications to this package which may subsequently be redistributed -and/or involve the use of third party software. diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/ASSEMBLY_EXCEPTION b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/ASSEMBLY_EXCEPTION deleted file mode 100644 index 065b8d9..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/ASSEMBLY_EXCEPTION +++ /dev/null @@ -1,27 +0,0 @@ - -OPENJDK ASSEMBLY EXCEPTION - -The OpenJDK source code made available by Oracle America, Inc. (Oracle) at -openjdk.java.net ("OpenJDK Code") is distributed under the terms of the GNU -General Public License version 2 -only ("GPL2"), with the following clarification and special exception. - - Linking this OpenJDK Code statically or dynamically with other code - is making a combined work based on this library. Thus, the terms - and conditions of GPL2 cover the whole combination. - - As a special exception, Oracle gives you permission to link this - OpenJDK Code with certain code licensed by Oracle as indicated at - http://openjdk.java.net/legal/exception-modules-2007-05-08.html - ("Designated Exception Modules") to produce an executable, - regardless of the license terms of the Designated Exception Modules, - and to copy and distribute the resulting executable under GPL2, - provided that the Designated Exception Modules continue to be - governed by the licenses under which they were offered by Oracle. - -As such, it allows licensees and sublicensees of Oracle's GPL2 OpenJDK Code -to build an executable that includes those portions of necessary code that -Oracle could not provide under GPL2 (or that Oracle has provided under GPL2 -with the Classpath exception). If you modify or add to the OpenJDK code, -that new GPL2 code may still be combined with Designated Exception Modules -if the new code is made subject to this exception by its copyright holder. diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/LICENSE b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/LICENSE deleted file mode 100644 index 8b400c7..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/LICENSE +++ /dev/null @@ -1,347 +0,0 @@ -The GNU General Public License (GPL) - -Version 2, June 1991 - -Copyright (C) 1989, 1991 Free Software Foundation, Inc. -51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - -Everyone is permitted to copy and distribute verbatim copies of this license -document, but changing it is not allowed. - -Preamble - -The licenses for most software are designed to take away your freedom to share -and change it. By contrast, the GNU General Public License is intended to -guarantee your freedom to share and change free software--to make sure the -software is free for all its users. This General Public License applies to -most of the Free Software Foundation's software and to any other program whose -authors commit to using it. (Some other Free Software Foundation software is -covered by the GNU Library General Public License instead.) You can apply it to -your programs, too. - -When we speak of free software, we are referring to freedom, not price. Our -General Public Licenses are designed to make sure that you have the freedom to -distribute copies of free software (and charge for this service if you wish), -that you receive source code or can get it if you want it, that you can change -the software or use pieces of it in new free programs; and that you know you -can do these things. - -To protect your rights, we need to make restrictions that forbid anyone to deny -you these rights or to ask you to surrender the rights. These restrictions -translate to certain responsibilities for you if you distribute copies of the -software, or if you modify it. - -For example, if you distribute copies of such a program, whether gratis or for -a fee, you must give the recipients all the rights that you have. You must -make sure that they, too, receive or can get the source code. And you must -show them these terms so they know their rights. - -We protect your rights with two steps: (1) copyright the software, and (2) -offer you this license which gives you legal permission to copy, distribute -and/or modify the software. - -Also, for each author's protection and ours, we want to make certain that -everyone understands that there is no warranty for this free software. If the -software is modified by someone else and passed on, we want its recipients to -know that what they have is not the original, so that any problems introduced -by others will not reflect on the original authors' reputations. - -Finally, any free program is threatened constantly by software patents. We -wish to avoid the danger that redistributors of a free program will -individually obtain patent licenses, in effect making the program proprietary. -To prevent this, we have made it clear that any patent must be licensed for -everyone's free use or not licensed at all. - -The precise terms and conditions for copying, distribution and modification -follow. - -TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - -0. This License applies to any program or other work which contains a notice -placed by the copyright holder saying it may be distributed under the terms of -this General Public License. The "Program", below, refers to any such program -or work, and a "work based on the Program" means either the Program or any -derivative work under copyright law: that is to say, a work containing the -Program or a portion of it, either verbatim or with modifications and/or -translated into another language. (Hereinafter, translation is included -without limitation in the term "modification".) Each licensee is addressed as -"you". - -Activities other than copying, distribution and modification are not covered by -this License; they are outside its scope. The act of running the Program is -not restricted, and the output from the Program is covered only if its contents -constitute a work based on the Program (independent of having been made by -running the Program). Whether that is true depends on what the Program does. - -1. You may copy and distribute verbatim copies of the Program's source code as -you receive it, in any medium, provided that you conspicuously and -appropriately publish on each copy an appropriate copyright notice and -disclaimer of warranty; keep intact all the notices that refer to this License -and to the absence of any warranty; and give any other recipients of the -Program a copy of this License along with the Program. - -You may charge a fee for the physical act of transferring a copy, and you may -at your option offer warranty protection in exchange for a fee. - -2. You may modify your copy or copies of the Program or any portion of it, thus -forming a work based on the Program, and copy and distribute such modifications -or work under the terms of Section 1 above, provided that you also meet all of -these conditions: - - a) You must cause the modified files to carry prominent notices stating - that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in whole or - in part contains or is derived from the Program or any part thereof, to be - licensed as a whole at no charge to all third parties under the terms of - this License. - - c) If the modified program normally reads commands interactively when run, - you must cause it, when started running for such interactive use in the - most ordinary way, to print or display an announcement including an - appropriate copyright notice and a notice that there is no warranty (or - else, saying that you provide a warranty) and that users may redistribute - the program under these conditions, and telling the user how to view a copy - of this License. (Exception: if the Program itself is interactive but does - not normally print such an announcement, your work based on the Program is - not required to print an announcement.) - -These requirements apply to the modified work as a whole. If identifiable -sections of that work are not derived from the Program, and can be reasonably -considered independent and separate works in themselves, then this License, and -its terms, do not apply to those sections when you distribute them as separate -works. But when you distribute the same sections as part of a whole which is a -work based on the Program, the distribution of the whole must be on the terms -of this License, whose permissions for other licensees extend to the entire -whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest your -rights to work written entirely by you; rather, the intent is to exercise the -right to control the distribution of derivative or collective works based on -the Program. - -In addition, mere aggregation of another work not based on the Program with the -Program (or with a work based on the Program) on a volume of a storage or -distribution medium does not bring the other work under the scope of this -License. - -3. You may copy and distribute the Program (or a work based on it, under -Section 2) in object code or executable form under the terms of Sections 1 and -2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable source - code, which must be distributed under the terms of Sections 1 and 2 above - on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three years, to - give any third party, for a charge no more than your cost of physically - performing source distribution, a complete machine-readable copy of the - corresponding source code, to be distributed under the terms of Sections 1 - and 2 above on a medium customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer to - distribute corresponding source code. (This alternative is allowed only - for noncommercial distribution and only if you received the program in - object code or executable form with such an offer, in accord with - Subsection b above.) - -The source code for a work means the preferred form of the work for making -modifications to it. For an executable work, complete source code means all -the source code for all modules it contains, plus any associated interface -definition files, plus the scripts used to control compilation and installation -of the executable. However, as a special exception, the source code -distributed need not include anything that is normally distributed (in either -source or binary form) with the major components (compiler, kernel, and so on) -of the operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the source -code from the same place counts as distribution of the source code, even though -third parties are not compelled to copy the source along with the object code. - -4. You may not copy, modify, sublicense, or distribute the Program except as -expressly provided under this License. Any attempt otherwise to copy, modify, -sublicense or distribute the Program is void, and will automatically terminate -your rights under this License. However, parties who have received copies, or -rights, from you under this License will not have their licenses terminated so -long as such parties remain in full compliance. - -5. You are not required to accept this License, since you have not signed it. -However, nothing else grants you permission to modify or distribute the Program -or its derivative works. These actions are prohibited by law if you do not -accept this License. Therefore, by modifying or distributing the Program (or -any work based on the Program), you indicate your acceptance of this License to -do so, and all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - -6. Each time you redistribute the Program (or any work based on the Program), -the recipient automatically receives a license from the original licensor to -copy, distribute or modify the Program subject to these terms and conditions. -You may not impose any further restrictions on the recipients' exercise of the -rights granted herein. You are not responsible for enforcing compliance by -third parties to this License. - -7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), conditions -are imposed on you (whether by court order, agreement or otherwise) that -contradict the conditions of this License, they do not excuse you from the -conditions of this License. If you cannot distribute so as to satisfy -simultaneously your obligations under this License and any other pertinent -obligations, then as a consequence you may not distribute the Program at all. -For example, if a patent license would not permit royalty-free redistribution -of the Program by all those who receive copies directly or indirectly through -you, then the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under any -particular circumstance, the balance of the section is intended to apply and -the section as a whole is intended to apply in other circumstances. - -It is not the purpose of this section to induce you to infringe any patents or -other property right claims or to contest validity of any such claims; this -section has the sole purpose of protecting the integrity of the free software -distribution system, which is implemented by public license practices. Many -people have made generous contributions to the wide range of software -distributed through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing to -distribute software through any other system and a licensee cannot impose that -choice. - -This section is intended to make thoroughly clear what is believed to be a -consequence of the rest of this License. - -8. If the distribution and/or use of the Program is restricted in certain -countries either by patents or by copyrighted interfaces, the original -copyright holder who places the Program under this License may add an explicit -geographical distribution limitation excluding those countries, so that -distribution is permitted only in or among countries not thus excluded. In -such case, this License incorporates the limitation as if written in the body -of this License. - -9. The Free Software Foundation may publish revised and/or new versions of the -General Public License from time to time. Such new versions will be similar in -spirit to the present version, but may differ in detail to address new problems -or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any later -version", you have the option of following the terms and conditions either of -that version or of any later version published by the Free Software Foundation. -If the Program does not specify a version number of this License, you may -choose any version ever published by the Free Software Foundation. - -10. If you wish to incorporate parts of the Program into other free programs -whose distribution conditions are different, write to the author to ask for -permission. For software which is copyrighted by the Free Software Foundation, -write to the Free Software Foundation; we sometimes make exceptions for this. -Our decision will be guided by the two goals of preserving the free status of -all derivatives of our free software and of promoting the sharing and reuse of -software generally. - -NO WARRANTY - -11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR -THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE -STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE -PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, -INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND -FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND -PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, -YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - -12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL -ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE -PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY -GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR -INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA -BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER -OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -END OF TERMS AND CONDITIONS - -How to Apply These Terms to Your New Programs - -If you develop a new program, and you want it to be of the greatest possible -use to the public, the best way to achieve this is to make it free software -which everyone can redistribute and change under these terms. - -To do so, attach the following notices to the program. It is safest to attach -them to the start of each source file to most effectively convey the exclusion -of warranty; and each file should have at least the "copyright" line and a -pointer to where the full notice is found. - - One line to give the program's name and a brief idea of what it does. - - Copyright (C) - - This program is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by the Free - Software Foundation; either version 2 of the License, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this when it -starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author Gnomovision comes - with ABSOLUTELY NO WARRANTY; for details type 'show w'. This is free - software, and you are welcome to redistribute it under certain conditions; - type 'show c' for details. - -The hypothetical commands 'show w' and 'show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may be -called something other than 'show w' and 'show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your school, -if any, to sign a "copyright disclaimer" for the program, if necessary. Here -is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - 'Gnomovision' (which makes passes at compilers) written by James Hacker. - - signature of Ty Coon, 1 April 1989 - - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General Public -License instead of this License. - - -"CLASSPATH" EXCEPTION TO THE GPL - -Certain source files distributed by Oracle America and/or its affiliates are -subject to the following clarification and special exception to the GPL, but -only where Oracle has expressly included in the particular source file's header -the words "Oracle designates this particular file as subject to the "Classpath" -exception as provided by Oracle in the LICENSE file that accompanied this code." - - Linking this library statically or dynamically with other modules is making - a combined work based on this library. Thus, the terms and conditions of - the GNU General Public License cover the whole combination. - - As a special exception, the copyright holders of this library give you - permission to link this library with independent modules to produce an - executable, regardless of the license terms of these independent modules, - and to copy and distribute the resulting executable under terms of your - choice, provided that you also meet, for each linked independent module, - the terms and conditions of the license of that module. An independent - module is a module which is not derived from or based on this library. If - you modify this library, you may extend this exception to your version of - the library, but you are not obligated to do so. If you do not wish to do - so, delete this exception statement from your version. diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/aes.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/aes.md deleted file mode 100644 index 6d0ee2e..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/aes.md +++ /dev/null @@ -1,36 +0,0 @@ -## Cryptix AES v3.2.0 - -### Cryptix General License -
-
-Cryptix General License
-
-Copyright (c) 1995-2005 The Cryptix Foundation Limited.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are
-met:
-
-  1. Redistributions of source code must retain the copyright notice,
-     this list of conditions and the following disclaimer.
-
-  2. Redistributions in binary form must reproduce the above copyright
-     notice, this list of conditions and the following disclaimer in
-     the documentation and/or other materials provided with the
-     distribution.
-
-THIS SOFTWARE IS PROVIDED BY THE CRYPTIX FOUNDATION LIMITED AND
-CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
-INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-IN NO EVENT SHALL THE CRYPTIX FOUNDATION LIMITED OR CONTRIBUTORS BE
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
-BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
-OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
-IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/asm.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/asm.md deleted file mode 100644 index 707ecda..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/asm.md +++ /dev/null @@ -1,36 +0,0 @@ -## ASM Bytecode Manipulation Framework v8.0.1 - -### ASM License -
-
-Copyright (c) 2000-2011 France Télécom
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions
-are met:
-
-1. Redistributions of source code must retain the above copyright
-   notice, this list of conditions and the following disclaimer.
-
-2. Redistributions in binary form must reproduce the above copyright
-   notice, this list of conditions and the following disclaimer in the
-   documentation and/or other materials provided with the distribution.
-
-3. Neither the name of the copyright holders nor the names of its
-   contributors may be used to endorse or promote products derived from
-   this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGE.
-
-
diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/c-libutl.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/c-libutl.md deleted file mode 100644 index 8bc9880..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/c-libutl.md +++ /dev/null @@ -1,35 +0,0 @@ -## c-libutl 20160225 - -### c-libutl License -``` - -This software is distributed under the terms of the BSD license. - -== BSD LICENSE =============================================================== - - (C) 2009 by Remo Dentato (rdentato@gmail.com) - - -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR -ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -http://opensource.org/licenses/bsd-license.php - -``` diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/cldr.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/cldr.md deleted file mode 100644 index 2f21c45..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/cldr.md +++ /dev/null @@ -1,105 +0,0 @@ -## Unicode Common Local Data Repository (CLDR) v39 - -### CLDR License - -``` - -UNICODE, INC. LICENSE AGREEMENT - DATA FILES AND SOFTWARE - -See Terms of Use for definitions of Unicode Inc.'s -Data Files and Software. - -NOTICE TO USER: Carefully read the following legal agreement. -BY DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S -DATA FILES ("DATA FILES"), AND/OR SOFTWARE ("SOFTWARE"), -YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE -TERMS AND CONDITIONS OF THIS AGREEMENT. -IF YOU DO NOT AGREE, DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE -THE DATA FILES OR SOFTWARE. - -COPYRIGHT AND PERMISSION NOTICE - -Copyright © 1991-2021 Unicode, Inc. All rights reserved. -Distributed under the Terms of Use in https://www.unicode.org/copyright.html. - -Permission is hereby granted, free of charge, to any person obtaining -a copy of the Unicode data files and any associated documentation -(the "Data Files") or Unicode software and any associated documentation -(the "Software") to deal in the Data Files or Software -without restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, and/or sell copies of -the Data Files or Software, and to permit persons to whom the Data Files -or Software are furnished to do so, provided that either -(a) this copyright and permission notice appear with all copies -of the Data Files or Software, or -(b) this copyright and permission notice appear in associated -Documentation. - -THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT OF THIRD PARTY RIGHTS. -IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS -NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL -DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER -TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THE DATA FILES OR SOFTWARE. - -Except as contained in this notice, the name of a copyright holder -shall not be used in advertising or otherwise to promote the sale, -use or other dealings in these Data Files or Software without prior -written authorization of the copyright holder. - - ------------------------------------------------------------- Terms of Use --------------------------------------------------------------- - -Unicode® Copyright and Terms of Use -For the general privacy policy governing access to this site, see the Unicode Privacy Policy. - -Unicode Copyright -Copyright © 1991-2021 Unicode, Inc. All rights reserved. -Definitions -Unicode Data Files ("DATA FILES") include all data files under the directories: -https://www.unicode.org/Public/ -https://www.unicode.org/reports/ -https://www.unicode.org/ivd/data/ - -Unicode Data Files do not include PDF online code charts under the directory: -https://www.unicode.org/Public/ - -Unicode Software ("SOFTWARE") includes any source code published in the Unicode Standard -or any source code or compiled code under the directories: -https://www.unicode.org/Public/PROGRAMS/ -https://www.unicode.org/Public/cldr/ -http://site.icu-project.org/download/ -Terms of Use -Certain documents and files on this website contain a legend indicating that "Modification is permitted." Any person is hereby authorized, without fee, to modify such documents and files to create derivative works conforming to the Unicode® Standard, subject to Terms and Conditions herein. -Any person is hereby authorized, without fee, to view, use, reproduce, and distribute all documents and files, subject to the Terms and Conditions herein. -Further specifications of rights and restrictions pertaining to the use of the Unicode DATA FILES and SOFTWARE can be found in the Unicode Data Files and Software License. -Each version of the Unicode Standard has further specifications of rights and restrictions of use. For the book editions (Unicode 5.0 and earlier), these are found on the back of the title page. -The Unicode PDF online code charts carry specific restrictions. Those restrictions are incorporated as the first page of each PDF code chart. -All other files, including online documentation of the core specification for Unicode 6.0 and later, are covered under these general Terms of Use. -No license is granted to "mirror" the Unicode website where a fee is charged for access to the "mirror" site. -Modification is not permitted with respect to this document. All copies of this document must be verbatim. -Restricted Rights Legend -Any technical data or software which is licensed to the United States of America, its agencies and/or instrumentalities under this Agreement is commercial technical data or commercial computer software developed exclusively at private expense as defined in FAR 2.101, or DFARS 252.227-7014 (June 1995), as applicable. For technical data, use, duplication, or disclosure by the Government is subject to restrictions as set forth in DFARS 202.227-7015 Technical Data, Commercial and Items (Nov 1995) and this Agreement. For Software, in accordance with FAR 12-212 or DFARS 227-7202, as applicable, use, duplication or disclosure by the Government is subject to the restrictions set forth in this Agreement. -Warranties and Disclaimers -This publication and/or website may include technical or typographical errors or other inaccuracies. Changes are periodically added to the information herein; these changes will be incorporated in new editions of the publication and/or website. Unicode, Inc. may make improvements and/or changes in the product(s) and/or program(s) described in this publication and/or website at any time. -If this file has been purchased on magnetic or optical media from Unicode, Inc. the sole and exclusive remedy for any claim will be exchange of the defective media within ninety (90) days of original purchase. -EXCEPT AS PROVIDED IN SECTION E.2, THIS PUBLICATION AND/OR SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND EITHER EXPRESS, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. UNICODE, INC. AND ITS LICENSORS ASSUME NO RESPONSIBILITY FOR ERRORS OR OMISSIONS IN THIS PUBLICATION AND/OR SOFTWARE OR OTHER DOCUMENTS WHICH ARE REFERENCED BY OR LINKED TO THIS PUBLICATION OR THE UNICODE WEBSITE. -Waiver of Damages -In no event shall Unicode, Inc. or its licensors be liable for any special, incidental, indirect or consequential damages of any kind, or any damages whatsoever, whether or not Unicode, Inc. was advised of the possibility of the damage, including, without limitation, those resulting from the following: loss of use, data or profits, in connection with the use, modification or distribution of this information or its derivatives. -Trademarks & Logos -The Unicode Word Mark and the Unicode Logo are trademarks of Unicode, Inc. “The Unicode Consortium” and “Unicode, Inc.” are trade names of Unicode, Inc. Use of the information and materials found on this website indicates your acknowledgement of Unicode, Inc.’s exclusive worldwide rights in the Unicode Word Mark, the Unicode Logo, and the Unicode trade names. -The Unicode Consortium Name and Trademark Usage Policy (“Trademark Policy”) are incorporated herein by reference and you agree to abide by the provisions of the Trademark Policy, which may be changed from time to time in the sole discretion of Unicode, Inc. -All third party trademarks referenced herein are the property of their respective owners. -Miscellaneous -Jurisdiction and Venue. This website is operated from a location in the State of California, United States of America. Unicode, Inc. makes no representation that the materials are appropriate for use in other locations. If you access this website from other locations, you are responsible for compliance with local laws. This Agreement, all use of this website and any claims and damages resulting from use of this website are governed solely by the laws of the State of California without regard to any principles which would apply the laws of a different jurisdiction. The user agrees that any disputes regarding this website shall be resolved solely in the courts located in Santa Clara County, California. The user agrees said courts have personal jurisdiction and agree to waive any right to transfer the dispute to any other forum. -Modification by Unicode, Inc. Unicode, Inc. shall have the right to modify this Agreement at any time by posting it to this website. The user may not assign any part of this Agreement without Unicode, Inc.’s prior written consent. -Taxes. The user agrees to pay any taxes arising from access to this website or use of the information herein, except for those based on Unicode’s net income. -Severability. If any provision of this Agreement is declared invalid or unenforceable, the remaining provisions of this Agreement shall remain in effect. -Entire Agreement. This Agreement constitutes the entire agreement between the parties. - - -``` diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/icu.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/icu.md deleted file mode 100644 index ab850bf..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/icu.md +++ /dev/null @@ -1,140 +0,0 @@ -## International Components for Unicode (ICU4J) v67.1 - -### ICU4J License -``` - -COPYRIGHT AND PERMISSION NOTICE (ICU 58 and later) - -Copyright © 1991-2020 Unicode, Inc. All rights reserved. -Distributed under the Terms of Use in https://www.unicode.org/copyright.html. - -Permission is hereby granted, free of charge, to any person obtaining -a copy of the Unicode data files and any associated documentation -(the "Data Files") or Unicode software and any associated documentation -(the "Software") to deal in the Data Files or Software -without restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, and/or sell copies of -the Data Files or Software, and to permit persons to whom the Data Files -or Software are furnished to do so, provided that either -(a) this copyright and permission notice appear with all copies -of the Data Files or Software, or -(b) this copyright and permission notice appear in associated -Documentation. - -THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT OF THIRD PARTY RIGHTS. -IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS -NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL -DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER -TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THE DATA FILES OR SOFTWARE. - -Except as contained in this notice, the name of a copyright holder -shall not be used in advertising or otherwise to promote the sale, -use or other dealings in these Data Files or Software without prior -written authorization of the copyright holder. - ---------------------- - -Third-Party Software Licenses - -This section contains third-party software notices and/or additional -terms for licensed third-party software components included within ICU -libraries. - -1. ICU License - ICU 1.8.1 to ICU 57.1 - -COPYRIGHT AND PERMISSION NOTICE - -Copyright (c) 1995-2016 International Business Machines Corporation and others -All rights reserved. - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, and/or sell copies of the Software, and to permit persons -to whom the Software is furnished to do so, provided that the above -copyright notice(s) and this permission notice appear in all copies of -the Software and that both the above copyright notice(s) and this -permission notice appear in supporting documentation. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT -OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR -HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY -SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER -RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF -CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN -CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - -Except as contained in this notice, the name of a copyright holder -shall not be used in advertising or otherwise to promote the sale, use -or other dealings in this Software without prior written authorization -of the copyright holder. - -All trademarks and registered trademarks mentioned herein are the -property of their respective owners. - - -—————————————————————————————————————————————————————————————————————— - - -From: https://www.unicode.org/copyright.html: - - Unicode® Copyright and Terms of Use - - For the general privacy policy governing access to this site, see the Unicode Privacy Policy. - - Unicode Copyright - Copyright © 1991-2020 Unicode, Inc. All rights reserved. - Definitions - - Unicode Data Files ("DATA FILES") include all data files under the directories: - https://www.unicode.org/Public/ - https://www.unicode.org/reports/ - https://www.unicode.org/ivd/data/ - - Unicode Data Files do not include PDF online code charts under the directory: - https://www.unicode.org/Public/ - - Unicode Software ("SOFTWARE") includes any source code published in the Unicode Standard - or any source code or compiled code under the directories: - https://www.unicode.org/Public/PROGRAMS/ - https://www.unicode.org/Public/cldr/ - http://site.icu-project.org/download/ - - Terms of Use - Certain documents and files on this website contain a legend indicating that "Modification is permitted." Any person is hereby authorized, without fee, to modify such documents and files to create derivative works conforming to the Unicode® Standard, subject to Terms and Conditions herein. - Any person is hereby authorized, without fee, to view, use, reproduce, and distribute all documents and files, subject to the Terms and Conditions herein. - Further specifications of rights and restrictions pertaining to the use of the Unicode DATA FILES and SOFTWARE can be found in the Unicode Data Files and Software License. - Each version of the Unicode Standard has further specifications of rights and restrictions of use. For the book editions (Unicode 5.0 and earlier), these are found on the back of the title page. - The Unicode PDF online code charts carry specific restrictions. Those restrictions are incorporated as the first page of each PDF code chart. - All other files, including online documentation of the core specification for Unicode 6.0 and later, are covered under these general Terms of Use. - No license is granted to "mirror" the Unicode website where a fee is charged for access to the "mirror" site. - Modification is not permitted with respect to this document. All copies of this document must be verbatim. - Restricted Rights Legend - Any technical data or software which is licensed to the United States of America, its agencies and/or instrumentalities under this Agreement is commercial technical data or commercial computer software developed exclusively at private expense as defined in FAR 2.101, or DFARS 252.227-7014 (June 1995), as applicable. For technical data, use, duplication, or disclosure by the Government is subject to restrictions as set forth in DFARS 202.227-7015 Technical Data, Commercial and Items (Nov 1995) and this Agreement. For Software, in accordance with FAR 12-212 or DFARS 227-7202, as applicable, use, duplication or disclosure by the Government is subject to the restrictions set forth in this Agreement. - Warranties and Disclaimers - This publication and/or website may include technical or typographical errors or other inaccuracies. Changes are periodically added to the information herein; these changes will be incorporated in new editions of the publication and/or website. Unicode, Inc. may make improvements and/or changes in the product(s) and/or program(s) described in this publication and/or website at any time. - If this file has been purchased on magnetic or optical media from Unicode, Inc. the sole and exclusive remedy for any claim will be exchange of the defective media within ninety (90) days of original purchase. - EXCEPT AS PROVIDED IN SECTION E.2, THIS PUBLICATION AND/OR SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND EITHER EXPRESS, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. UNICODE, INC. AND ITS LICENSORS ASSUME NO RESPONSIBILITY FOR ERRORS OR OMISSIONS IN THIS PUBLICATION AND/OR SOFTWARE OR OTHER DOCUMENTS WHICH ARE REFERENCED BY OR LINKED TO THIS PUBLICATION OR THE UNICODE WEBSITE. - Waiver of Damages - In no event shall Unicode, Inc. or its licensors be liable for any special, incidental, indirect or consequential damages of any kind, or any damages whatsoever, whether or not Unicode, Inc. was advised of the possibility of the damage, including, without limitation, those resulting from the following: loss of use, data or profits, in connection with the use, modification or distribution of this information or its derivatives. - Trademarks & Logos - The Unicode Word Mark and the Unicode Logo are trademarks of Unicode, Inc. “The Unicode Consortium” and “Unicode, Inc.” are trade names of Unicode, Inc. Use of the information and materials found on this website indicates your acknowledgement of Unicode, Inc.’s exclusive worldwide rights in the Unicode Word Mark, the Unicode Logo, and the Unicode trade names. - The Unicode Consortium Name and Trademark Usage Policy (“Trademark Policy”) are incorporated herein by reference and you agree to abide by the provisions of the Trademark Policy, which may be changed from time to time in the sole discretion of Unicode, Inc. - All third party trademarks referenced herein are the property of their respective owners. - Miscellaneous - Jurisdiction and Venue. This website is operated from a location in the State of California, United States of America. Unicode, Inc. makes no representation that the materials are appropriate for use in other locations. If you access this website from other locations, you are responsible for compliance with local laws. This Agreement, all use of this website and any claims and damages resulting from use of this website are governed solely by the laws of the State of California without regard to any principles which would apply the laws of a different jurisdiction. The user agrees that any disputes regarding this website shall be resolved solely in the courts located in Santa Clara County, California. The user agrees said courts have personal jurisdiction and agree to waive any right to transfer the dispute to any other forum. - Modification by Unicode, Inc. Unicode, Inc. shall have the right to modify this Agreement at any time by posting it to this website. The user may not assign any part of this Agreement without Unicode, Inc.’s prior written consent. - Taxes. The user agrees to pay any taxes arising from access to this website or use of the information herein, except for those based on Unicode’s net income. - Severability. If any provision of this Agreement is declared invalid or unenforceable, the remaining provisions of this Agreement shall remain in effect. - Entire Agreement. This Agreement constitutes the entire agreement between the parties. - -``` - diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/public_suffix.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/public_suffix.md deleted file mode 100644 index 61d9607..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/public_suffix.md +++ /dev/null @@ -1,399 +0,0 @@ -## Mozilla Public Suffix List - -### Public Suffix Notice -``` -You are receiving a copy of the Mozilla Public Suffix List in the following -file: /lib/security/public_suffix_list.dat. The terms of the -Oracle license do NOT apply to this file; it is licensed under the -Mozilla Public License 2.0, separately from the Oracle programs you receive. -If you do not wish to use the Public Suffix List, you may remove the -/lib/security/public_suffix_list.dat file. - -The Source Code of this file is available under the -Mozilla Public License, v. 2.0 and is located at -https://raw.githubusercontent.com/publicsuffix/list/3c213aab32b3c014f171b1673d4ce9b5cd72bf1c/public_suffix_list.dat. -If a copy of the MPL was not distributed with this file, you can obtain one -at https://mozilla.org/MPL/2.0/. - -Software distributed under the License is distributed on an "AS IS" basis, -WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -for the specific language governing rights and limitations under the License. -``` - -### MPL v2.0 -``` -Mozilla Public License Version 2.0 -================================== - -1. Definitions --------------- - -1.1. "Contributor" - means each individual or legal entity that creates, contributes to - the creation of, or owns Covered Software. - -1.2. "Contributor Version" - means the combination of the Contributions of others (if any) used - by a Contributor and that particular Contributor's Contribution. - -1.3. "Contribution" - means Covered Software of a particular Contributor. - -1.4. "Covered Software" - means Source Code Form to which the initial Contributor has attached - the notice in Exhibit A, the Executable Form of such Source Code - Form, and Modifications of such Source Code Form, in each case - including portions thereof. - -1.5. "Incompatible With Secondary Licenses" - means - - (a) that the initial Contributor has attached the notice described - in Exhibit B to the Covered Software; or - - (b) that the Covered Software was made available under the terms of - version 1.1 or earlier of the License, but not also under the - terms of a Secondary License. - -1.6. "Executable Form" - means any form of the work other than Source Code Form. - -1.7. "Larger Work" - means a work that combines Covered Software with other material, in - a separate file or files, that is not Covered Software. - -1.8. "License" - means this document. - -1.9. "Licensable" - means having the right to grant, to the maximum extent possible, - whether at the time of the initial grant or subsequently, any and - all of the rights conveyed by this License. - -1.10. "Modifications" - means any of the following: - - (a) any file in Source Code Form that results from an addition to, - deletion from, or modification of the contents of Covered - Software; or - - (b) any new file in Source Code Form that contains any Covered - Software. - -1.11. "Patent Claims" of a Contributor - means any patent claim(s), including without limitation, method, - process, and apparatus claims, in any patent Licensable by such - Contributor that would be infringed, but for the grant of the - License, by the making, using, selling, offering for sale, having - made, import, or transfer of either its Contributions or its - Contributor Version. - -1.12. "Secondary License" - means either the GNU General Public License, Version 2.0, the GNU - Lesser General Public License, Version 2.1, the GNU Affero General - Public License, Version 3.0, or any later versions of those - licenses. - -1.13. "Source Code Form" - means the form of the work preferred for making modifications. - -1.14. "You" (or "Your") - means an individual or a legal entity exercising rights under this - License. For legal entities, "You" includes any entity that - controls, is controlled by, or is under common control with You. For - purposes of this definition, "control" means (a) the power, direct - or indirect, to cause the direction or management of such entity, - whether by contract or otherwise, or (b) ownership of more than - fifty percent (50%) of the outstanding shares or beneficial - ownership of such entity. - -2. License Grants and Conditions --------------------------------- - -2.1. Grants - -Each Contributor hereby grants You a world-wide, royalty-free, -non-exclusive license: - -(a) under intellectual property rights (other than patent or trademark) - Licensable by such Contributor to use, reproduce, make available, - modify, display, perform, distribute, and otherwise exploit its - Contributions, either on an unmodified basis, with Modifications, or - as part of a Larger Work; and - -(b) under Patent Claims of such Contributor to make, use, sell, offer - for sale, have made, import, and otherwise transfer either its - Contributions or its Contributor Version. - -2.2. Effective Date - -The licenses granted in Section 2.1 with respect to any Contribution -become effective for each Contribution on the date the Contributor first -distributes such Contribution. - -2.3. Limitations on Grant Scope - -The licenses granted in this Section 2 are the only rights granted under -this License. No additional rights or licenses will be implied from the -distribution or licensing of Covered Software under this License. -Notwithstanding Section 2.1(b) above, no patent license is granted by a -Contributor: - -(a) for any code that a Contributor has removed from Covered Software; - or - -(b) for infringements caused by: (i) Your and any other third party's - modifications of Covered Software, or (ii) the combination of its - Contributions with other software (except as part of its Contributor - Version); or - -(c) under Patent Claims infringed by Covered Software in the absence of - its Contributions. - -This License does not grant any rights in the trademarks, service marks, -or logos of any Contributor (except as may be necessary to comply with -the notice requirements in Section 3.4). - -2.4. Subsequent Licenses - -No Contributor makes additional grants as a result of Your choice to -distribute the Covered Software under a subsequent version of this -License (see Section 10.2) or under the terms of a Secondary License (if -permitted under the terms of Section 3.3). - -2.5. Representation - -Each Contributor represents that the Contributor believes its -Contributions are its original creation(s) or it has sufficient rights -to grant the rights to its Contributions conveyed by this License. - -2.6. Fair Use - -This License is not intended to limit any rights You have under -applicable copyright doctrines of fair use, fair dealing, or other -equivalents. - -2.7. Conditions - -Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted -in Section 2.1. - -3. Responsibilities -------------------- - -3.1. Distribution of Source Form - -All distribution of Covered Software in Source Code Form, including any -Modifications that You create or to which You contribute, must be under -the terms of this License. You must inform recipients that the Source -Code Form of the Covered Software is governed by the terms of this -License, and how they can obtain a copy of this License. You may not -attempt to alter or restrict the recipients' rights in the Source Code -Form. - -3.2. Distribution of Executable Form - -If You distribute Covered Software in Executable Form then: - -(a) such Covered Software must also be made available in Source Code - Form, as described in Section 3.1, and You must inform recipients of - the Executable Form how they can obtain a copy of such Source Code - Form by reasonable means in a timely manner, at a charge no more - than the cost of distribution to the recipient; and - -(b) You may distribute such Executable Form under the terms of this - License, or sublicense it under different terms, provided that the - license for the Executable Form does not attempt to limit or alter - the recipients' rights in the Source Code Form under this License. - -3.3. Distribution of a Larger Work - -You may create and distribute a Larger Work under terms of Your choice, -provided that You also comply with the requirements of this License for -the Covered Software. If the Larger Work is a combination of Covered -Software with a work governed by one or more Secondary Licenses, and the -Covered Software is not Incompatible With Secondary Licenses, this -License permits You to additionally distribute such Covered Software -under the terms of such Secondary License(s), so that the recipient of -the Larger Work may, at their option, further distribute the Covered -Software under the terms of either this License or such Secondary -License(s). - -3.4. Notices - -You may not remove or alter the substance of any license notices -(including copyright notices, patent notices, disclaimers of warranty, -or limitations of liability) contained within the Source Code Form of -the Covered Software, except that You may alter any license notices to -the extent required to remedy known factual inaccuracies. - -3.5. Application of Additional Terms - -You may choose to offer, and to charge a fee for, warranty, support, -indemnity or liability obligations to one or more recipients of Covered -Software. However, You may do so only on Your own behalf, and not on -behalf of any Contributor. You must make it absolutely clear that any -such warranty, support, indemnity, or liability obligation is offered by -You alone, and You hereby agree to indemnify every Contributor for any -liability incurred by such Contributor as a result of warranty, support, -indemnity or liability terms You offer. You may include additional -disclaimers of warranty and limitations of liability specific to any -jurisdiction. - -4. Inability to Comply Due to Statute or Regulation ---------------------------------------------------- - -If it is impossible for You to comply with any of the terms of this -License with respect to some or all of the Covered Software due to -statute, judicial order, or regulation then You must: (a) comply with -the terms of this License to the maximum extent possible; and (b) -describe the limitations and the code they affect. Such description must -be placed in a text file included with all distributions of the Covered -Software under this License. Except to the extent prohibited by statute -or regulation, such description must be sufficiently detailed for a -recipient of ordinary skill to be able to understand it. - -5. Termination --------------- - -5.1. The rights granted under this License will terminate automatically -if You fail to comply with any of its terms. However, if You become -compliant, then the rights granted under this License from a particular -Contributor are reinstated (a) provisionally, unless and until such -Contributor explicitly and finally terminates Your grants, and (b) on an -ongoing basis, if such Contributor fails to notify You of the -non-compliance by some reasonable means prior to 60 days after You have -come back into compliance. Moreover, Your grants from a particular -Contributor are reinstated on an ongoing basis if such Contributor -notifies You of the non-compliance by some reasonable means, this is the -first time You have received notice of non-compliance with this License -from such Contributor, and You become compliant prior to 30 days after -Your receipt of the notice. - -5.2. If You initiate litigation against any entity by asserting a patent -infringement claim (excluding declaratory judgment actions, -counter-claims, and cross-claims) alleging that a Contributor Version -directly or indirectly infringes any patent, then the rights granted to -You by any and all Contributors for the Covered Software under Section -2.1 of this License shall terminate. - -5.3. In the event of termination under Sections 5.1 or 5.2 above, all -end user license agreements (excluding distributors and resellers) which -have been validly granted by You or Your distributors under this License -prior to termination shall survive termination. - -************************************************************************ -* * -* 6. Disclaimer of Warranty * -* ------------------------- * -* * -* Covered Software is provided under this License on an "as is" * -* basis, without warranty of any kind, either expressed, implied, or * -* statutory, including, without limitation, warranties that the * -* Covered Software is free of defects, merchantable, fit for a * -* particular purpose or non-infringing. The entire risk as to the * -* quality and performance of the Covered Software is with You. * -* Should any Covered Software prove defective in any respect, You * -* (not any Contributor) assume the cost of any necessary servicing, * -* repair, or correction. This disclaimer of warranty constitutes an * -* essential part of this License. No use of any Covered Software is * -* authorized under this License except under this disclaimer. * -* * -************************************************************************ - -************************************************************************ -* * -* 7. Limitation of Liability * -* -------------------------- * -* * -* Under no circumstances and under no legal theory, whether tort * -* (including negligence), contract, or otherwise, shall any * -* Contributor, or anyone who distributes Covered Software as * -* permitted above, be liable to You for any direct, indirect, * -* special, incidental, or consequential damages of any character * -* including, without limitation, damages for lost profits, loss of * -* goodwill, work stoppage, computer failure or malfunction, or any * -* and all other commercial damages or losses, even if such party * -* shall have been informed of the possibility of such damages. This * -* limitation of liability shall not apply to liability for death or * -* personal injury resulting from such party's negligence to the * -* extent applicable law prohibits such limitation. Some * -* jurisdictions do not allow the exclusion or limitation of * -* incidental or consequential damages, so this exclusion and * -* limitation may not apply to You. * -* * -************************************************************************ - -8. Litigation -------------- - -Any litigation relating to this License may be brought only in the -courts of a jurisdiction where the defendant maintains its principal -place of business and such litigation shall be governed by laws of that -jurisdiction, without reference to its conflict-of-law provisions. -Nothing in this Section shall prevent a party's ability to bring -cross-claims or counter-claims. - -9. Miscellaneous ----------------- - -This License represents the complete agreement concerning the subject -matter hereof. If any provision of this License is held to be -unenforceable, such provision shall be reformed only to the extent -necessary to make it enforceable. Any law or regulation which provides -that the language of a contract shall be construed against the drafter -shall not be used to construe this License against a Contributor. - -10. Versions of the License ---------------------------- - -10.1. New Versions - -Mozilla Foundation is the license steward. Except as provided in Section -10.3, no one other than the license steward has the right to modify or -publish new versions of this License. Each version will be given a -distinguishing version number. - -10.2. Effect of New Versions - -You may distribute the Covered Software under the terms of the version -of the License under which You originally received the Covered Software, -or under the terms of any subsequent version published by the license -steward. - -10.3. Modified Versions - -If you create software not governed by this License, and you want to -create a new license for such software, you may create and use a -modified version of this License if you rename the license and remove -any references to the name of the license steward (except to note that -such modified license differs from this License). - -10.4. Distributing Source Code Form that is Incompatible With Secondary -Licenses - -If You choose to distribute Source Code Form that is Incompatible With -Secondary Licenses under the terms of this version of the License, the -notice described in Exhibit B of this License must be attached. - -Exhibit A - Source Code Form License Notice -------------------------------------------- - - This Source Code Form is subject to the terms of the Mozilla Public - License, v. 2.0. If a copy of the MPL was not distributed with this - file, You can obtain one at https://mozilla.org/MPL/2.0/. - -If it is not possible or desirable to put the notice in a particular -file, then You may include the notice in a location (such as a LICENSE -file in a relevant directory) where a recipient would be likely to look -for such a notice. - -You may add additional accurate notices of copyright ownership. - -Exhibit B - "Incompatible With Secondary Licenses" Notice ---------------------------------------------------------- - - This Source Code Form is "Incompatible With Secondary Licenses", as - defined by the Mozilla Public License, v. 2.0. - -``` diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/unicode.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/unicode.md deleted file mode 100644 index cff0c82..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.base/unicode.md +++ /dev/null @@ -1,54 +0,0 @@ -## The Unicode Standard, Unicode Character Database, Version 13.0.0 - -### Unicode Character Database -``` - -UNICODE, INC. LICENSE AGREEMENT - DATA FILES AND SOFTWARE - -See Terms of Use for definitions of Unicode Inc.'s -Data Files and Software. - -NOTICE TO USER: Carefully read the following legal agreement. -BY DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S -DATA FILES ("DATA FILES"), AND/OR SOFTWARE ("SOFTWARE"), -YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE -TERMS AND CONDITIONS OF THIS AGREEMENT. -IF YOU DO NOT AGREE, DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE -THE DATA FILES OR SOFTWARE. - -COPYRIGHT AND PERMISSION NOTICE - -Copyright © 1991-2020 Unicode, Inc. All rights reserved. -Distributed under the Terms of Use in https://www.unicode.org/copyright.html. - -Permission is hereby granted, free of charge, to any person obtaining -a copy of the Unicode data files and any associated documentation -(the "Data Files") or Unicode software and any associated documentation -(the "Software") to deal in the Data Files or Software -without restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, and/or sell copies of -the Data Files or Software, and to permit persons to whom the Data Files -or Software are furnished to do so, provided that either -(a) this copyright and permission notice appear with all copies -of the Data Files or Software, or -(b) this copyright and permission notice appear in associated -Documentation. - -THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT OF THIRD PARTY RIGHTS. -IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS -NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL -DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER -TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THE DATA FILES OR SOFTWARE. - -Except as contained in this notice, the name of a copyright holder -shall not be used in advertising or otherwise to promote the sale, -use or other dealings in these Data Files or Software without prior -written authorization of the copyright holder. - -``` - diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.datatransfer/ADDITIONAL_LICENSE_INFO b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.datatransfer/ADDITIONAL_LICENSE_INFO deleted file mode 120000 index 76b7b2f..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.datatransfer/ADDITIONAL_LICENSE_INFO +++ /dev/null @@ -1 +0,0 @@ -../java.base/ADDITIONAL_LICENSE_INFO \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.datatransfer/ASSEMBLY_EXCEPTION b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.datatransfer/ASSEMBLY_EXCEPTION deleted file mode 120000 index bd8da86..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.datatransfer/ASSEMBLY_EXCEPTION +++ /dev/null @@ -1 +0,0 @@ -../java.base/ASSEMBLY_EXCEPTION \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.datatransfer/LICENSE b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.datatransfer/LICENSE deleted file mode 120000 index 902705b..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.datatransfer/LICENSE +++ /dev/null @@ -1 +0,0 @@ -../java.base/LICENSE \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/ADDITIONAL_LICENSE_INFO b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/ADDITIONAL_LICENSE_INFO deleted file mode 120000 index 76b7b2f..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/ADDITIONAL_LICENSE_INFO +++ /dev/null @@ -1 +0,0 @@ -../java.base/ADDITIONAL_LICENSE_INFO \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/ASSEMBLY_EXCEPTION b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/ASSEMBLY_EXCEPTION deleted file mode 120000 index bd8da86..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/ASSEMBLY_EXCEPTION +++ /dev/null @@ -1 +0,0 @@ -../java.base/ASSEMBLY_EXCEPTION \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/LICENSE b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/LICENSE deleted file mode 120000 index 902705b..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/LICENSE +++ /dev/null @@ -1 +0,0 @@ -../java.base/LICENSE \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/colorimaging.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/colorimaging.md deleted file mode 100644 index eeb9932..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/colorimaging.md +++ /dev/null @@ -1,7 +0,0 @@ -## Eastman Kodak Company: Portions of color management and imaging software - -### Eastman Kodak Notice -
-Portions Copyright Eastman Kodak Company 1991-2003
-
- diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/freetype.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/freetype.md deleted file mode 100644 index dd1ce99..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/freetype.md +++ /dev/null @@ -1,609 +0,0 @@ -## The FreeType Project: Freetype v2.12.1 - - -### FreeType Notice - -``` -FreeType comes with two licenses from which you can choose the one -which fits your needs best. - - The FreeType License (FTL) is the most commonly used one. It is - a BSD-style license with a credit clause and thus compatible with - the GNU Public License (GPL) version 3, but not with the - GPL version 2. - - The GNU General Public License (GPL), version 2. Use it for all - projects which use the GPLv2 also, or which need a license - compatible to the GPLv2. - -``` - -### FreeType License -``` - The FreeType Project LICENSE - ---------------------------- - - 2006-Jan-27 - - Copyright 1996-2002, 2006 by - David Turner, Robert Wilhelm, and Werner Lemberg - - - -Introduction -============ - - The FreeType Project is distributed in several archive packages; - some of them may contain, in addition to the FreeType font engine, - various tools and contributions which rely on, or relate to, the - FreeType Project. - - This license applies to all files found in such packages, and - which do not fall under their own explicit license. The license - affects thus the FreeType font engine, the test programs, - documentation and makefiles, at the very least. - - This license was inspired by the BSD, Artistic, and IJG - (Independent JPEG Group) licenses, which all encourage inclusion - and use of free software in commercial and freeware products - alike. As a consequence, its main points are that: - - o We don't promise that this software works. However, we will be - interested in any kind of bug reports. (`as is' distribution) - - o You can use this software for whatever you want, in parts or - full form, without having to pay us. (`royalty-free' usage) - - o You may not pretend that you wrote this software. If you use - it, or only parts of it, in a program, you must acknowledge - somewhere in your documentation that you have used the - FreeType code. (`credits') - - We specifically permit and encourage the inclusion of this - software, with or without modifications, in commercial products. - We disclaim all warranties covering The FreeType Project and - assume no liability related to The FreeType Project. - - - Finally, many people asked us for a preferred form for a - credit/disclaimer to use in compliance with this license. We thus - encourage you to use the following text: - - """ - Portions of this software are copyright © The FreeType - Project (www.freetype.org). All rights reserved. - """ - - Please replace with the value from the FreeType version you - actually use. - - -Legal Terms -=========== - -0. Definitions --------------- - - Throughout this license, the terms `package', `FreeType Project', - and `FreeType archive' refer to the set of files originally - distributed by the authors (David Turner, Robert Wilhelm, and - Werner Lemberg) as the `FreeType Project', be they named as alpha, - beta or final release. - - `You' refers to the licensee, or person using the project, where - `using' is a generic term including compiling the project's source - code as well as linking it to form a `program' or `executable'. - This program is referred to as `a program using the FreeType - engine'. - - This license applies to all files distributed in the original - FreeType Project, including all source code, binaries and - documentation, unless otherwise stated in the file in its - original, unmodified form as distributed in the original archive. - If you are unsure whether or not a particular file is covered by - this license, you must contact us to verify this. - - The FreeType Project is copyright (C) 1996-2000 by David Turner, - Robert Wilhelm, and Werner Lemberg. All rights reserved except as - specified below. - -1. No Warranty --------------- - - THE FREETYPE PROJECT IS PROVIDED `AS IS' WITHOUT WARRANTY OF ANY - KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, - WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - PURPOSE. IN NO EVENT WILL ANY OF THE AUTHORS OR COPYRIGHT HOLDERS - BE LIABLE FOR ANY DAMAGES CAUSED BY THE USE OR THE INABILITY TO - USE, OF THE FREETYPE PROJECT. - -2. Redistribution ------------------ - - This license grants a worldwide, royalty-free, perpetual and - irrevocable right and license to use, execute, perform, compile, - display, copy, create derivative works of, distribute and - sublicense the FreeType Project (in both source and object code - forms) and derivative works thereof for any purpose; and to - authorize others to exercise some or all of the rights granted - herein, subject to the following conditions: - - o Redistribution of source code must retain this license file - (`FTL.TXT') unaltered; any additions, deletions or changes to - the original files must be clearly indicated in accompanying - documentation. The copyright notices of the unaltered, - original files must be preserved in all copies of source - files. - - o Redistribution in binary form must provide a disclaimer that - states that the software is based in part of the work of the - FreeType Team, in the distribution documentation. We also - encourage you to put an URL to the FreeType web page in your - documentation, though this isn't mandatory. - - These conditions apply to any software derived from or based on - the FreeType Project, not just the unmodified files. If you use - our work, you must acknowledge us. However, no fee need be paid - to us. - -3. Advertising --------------- - - Neither the FreeType authors and contributors nor you shall use - the name of the other for commercial, advertising, or promotional - purposes without specific prior written permission. - - We suggest, but do not require, that you use one or more of the - following phrases to refer to this software in your documentation - or advertising materials: `FreeType Project', `FreeType Engine', - `FreeType library', or `FreeType Distribution'. - - As you have not signed this license, you are not required to - accept it. However, as the FreeType Project is copyrighted - material, only this license, or another one contracted with the - authors, grants you the right to use, distribute, and modify it. - Therefore, by using, distributing, or modifying the FreeType - Project, you indicate that you understand and accept all the terms - of this license. - -4. Contacts ------------ - - There are two mailing lists related to FreeType: - - o freetype@nongnu.org - - Discusses general use and applications of FreeType, as well as - future and wanted additions to the library and distribution. - If you are looking for support, start in this list if you - haven't found anything to help you in the documentation. - - o freetype-devel@nongnu.org - - Discusses bugs, as well as engine internals, design issues, - specific licenses, porting, etc. - - Our home page can be found at - - http://www.freetype.org - -``` - -### GPL v2 - -``` - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. - -######################################################################### - ---- fthash.c and fthash.h are covered by the following notices --- - -/* - * Copyright 2000 Computing Research Labs, New Mexico State University - * Copyright 2001-2015 - * Francesco Zappa Nardelli - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * THE COMPUTING RESEARCH LAB OR NEW MEXICO STATE UNIVERSITY BE LIABLE FOR ANY - * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT - * OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR - * THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - - /************************************************************************** - * - * This file is based on code from bdf.c,v 1.22 2000/03/16 20:08:50 - * - * taken from Mark Leisher's xmbdfed package - * - */ - -######################################################################### - - ---- FreeType 2 PSaux module is covered by the following notices --- - -Copyright 2006-2014 Adobe Systems Incorporated. - -This software, and all works of authorship, whether in source or -object code form as indicated by the copyright notice(s) included -herein (collectively, the "Work") is made available, and may only be -used, modified, and distributed under the FreeType Project License, -LICENSE.TXT. Additionally, subject to the terms and conditions of the -FreeType Project License, each contributor to the Work hereby grants -to any individual or legal entity exercising permissions granted by -the FreeType Project License and this section (hereafter, "You" or -"Your") a perpetual, worldwide, non-exclusive, no-charge, -royalty-free, irrevocable (except as stated in this section) patent -license to make, have made, use, offer to sell, sell, import, and -otherwise transfer the Work, where such license applies only to those -patent claims licensable by such contributor that are necessarily -infringed by their contribution(s) alone or by combination of their -contribution(s) with the Work to which such contribution(s) was -submitted. If You institute patent litigation against any entity -(including a cross-claim or counterclaim in a lawsuit) alleging that -the Work or a contribution incorporated within the Work constitutes -direct or contributory patent infringement, then any patent licenses -granted to You under this License for that Work shall terminate as of -the date such litigation is filed. - -By using, modifying, or distributing the Work you indicate that you -have read and understood the terms and conditions of the -FreeType Project License as well as those provided in this section, -and you accept them fully. - -######################################################################### - -``` - diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/giflib.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/giflib.md deleted file mode 100644 index 0be4fb8..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/giflib.md +++ /dev/null @@ -1,30 +0,0 @@ -## GIFLIB v5.2.1 - -### GIFLIB License -``` - -The GIFLIB distribution is Copyright (c) 1997 Eric S. Raymond - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - - -https://sourceforge.net/p/giflib/code/ci/master/tree/openbsd-reallocarray.c - -Copyright (c) 2008 Otto Moerbeek -SPDX-License-Identifier: MIT diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/harfbuzz.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/harfbuzz.md deleted file mode 100644 index 55deb5f..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/harfbuzz.md +++ /dev/null @@ -1,66 +0,0 @@ -## Harfbuzz v4.4.1 - -### Harfbuzz License - -https://github.com/harfbuzz/harfbuzz/blob/master/COPYING - -
-
-HarfBuzz is licensed under the so-called "Old MIT" license.  Details follow.
-For parts of HarfBuzz that are licensed under different licenses see individual
-files names COPYING in subdirectories where applicable.
-
-Copyright © 2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020  Google, Inc.
-Copyright © 2018,2019,2020  Ebrahim Byagowi
-Copyright © 2019,2020  Facebook, Inc. 
-Copyright © 2012  Mozilla Foundation
-Copyright © 2011  Codethink Limited
-Copyright © 2008,2010  Nokia Corporation and/or its subsidiary(-ies)
-Copyright © 2009  Keith Stribley
-Copyright © 2009  Martin Hosken and SIL International
-Copyright © 2007  Chris Wilson
-Copyright © 2006  Behdad Esfahbod
-Copyright © 2005  David Turner
-Copyright © 2004,2007,2008,2009,2010  Red Hat, Inc.
-Copyright © 1998-2004  David Turner and Werner Lemberg
-
-For full copyright notices consult the individual files in the package.
-
-
-Permission is hereby granted, without written agreement and without
-license or royalty fees, to use, copy, modify, and distribute this
-software and its documentation for any purpose, provided that the
-above copyright notice and the following two paragraphs appear in
-all copies of this software.
-
-IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
-DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
-ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
-IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
-DAMAGE.
-
-THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
-BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
-FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
-ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
-PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
-
-All source code, except for one section, is licensed as above. The one
-exception is licensed with a slightly different MIT variant:
-The contents of this directory are licensed under the following terms:
-
-Copyright (C) 2012 Grigori Goronzy 
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-
-
diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/jpeg.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/jpeg.md deleted file mode 100644 index 1a0d41c..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/jpeg.md +++ /dev/null @@ -1,77 +0,0 @@ -## Independent JPEG Group: JPEG release 6b - -### JPEG License - -``` -**************************************************************************** - -Copyright (C) 1991-1998, Thomas G. Lane. - -This software is the work of Tom Lane, Philip Gladstone, Jim Boucher, -Lee Crocker, Julian Minguillon, Luis Ortiz, George Phillips, Davide Rossi, -Guido Vollbeding, Ge' Weijers, and other members of the Independent JPEG -Group. - -IJG is not affiliated with the official ISO JPEG standards committee. - -The authors make NO WARRANTY or representation, either express or implied, -with respect to this software, its quality, accuracy, merchantability, or -fitness for a particular purpose. This software is provided "AS IS", -and you, its user, assume the entire risk as to its quality and accuracy. - -This software is copyright (C) 1991-1998, Thomas G. Lane. -All Rights Reserved except as specified below. - -Permission is hereby granted to use, copy, modify, and distribute -this software (or portions thereof) for any purpose, without fee, -subject to these conditions: - -(1) If any part of the source code for this software is distributed, -then this README file must be included, with this copyright and no-warranty -notice unaltered; and any additions, deletions, or changes to the original -files must be clearly indicated in accompanying documentation. - -(2) If only executable code is distributed, then the accompanying documentation -must state that "this software is based in part on the work of the -Independent JPEG Group". - -(3) Permission for use of this software is granted only if the user accepts -full responsibility for any undesirable consequences; the authors accept -NO LIABILITY for damages of any kind. - -These conditions apply to any software derived from or based on the IJG code, -not just to the unmodified library. If you use our work, you ought to -acknowledge us. - -Permission is NOT granted for the use of any IJG author's name or company name -in advertising or publicity relating to this software or products derived -from it. This software may be referred to only as "the Independent JPEG -Group's software". - -We specifically permit and encourage the use of this software as the basis -of commercial products, provided that all warranty or liability claims are -assumed by the product vendor. - -It appears that the arithmetic coding option of the JPEG spec is covered -by patents owned by IBM, AT&T, and Mitsubishi. Hence arithmetic coding -cannot legally be used without obtaining one or more licenses. For this -reason, support for arithmetic coding has been removed from the free -JPEG software. (Since arithmetic coding provides only a marginal gain -over the unpatented Huffman mode, it is unlikely that very many -implementations will support it.) So far as we are aware, there are -no patent restrictions on the remaining code. - -The IJG distribution formerly included code to read and write GIF files. -To avoid entanglement with the Unisys LZW patent, GIF reading support -has been removed altogether, and the GIF writer has been simplified to -produce "uncompressed GIFs". This technique does not use the LZW algorithm; -the resulting GIF files are larger than usual, but are readable by all -standard GIF decoders. - -We are required to state that "The Graphics Interchange Format(c) is -the Copyright property of CompuServe Incorporated. GIF(sm) is a -Service Mark property of CompuServe Incorporated." - -**************************************************************************** -``` - diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/lcms.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/lcms.md deleted file mode 100644 index 1977a6b..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/lcms.md +++ /dev/null @@ -1,27 +0,0 @@ -## Little Color Management System (LCMS) v2.12 - -### LCMS License -
-
-Little Color Management System
-Copyright (c) 1998-2020 Marti Maria Saguer
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation
-the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software
-is furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
-THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/libpng.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/libpng.md deleted file mode 100644 index 655cd09..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/libpng.md +++ /dev/null @@ -1,141 +0,0 @@ -## libpng v1.6.37 - -### libpng License -
-
-COPYRIGHT NOTICE, DISCLAIMER, and LICENSE
-=========================================
-
-PNG Reference Library License version 2
----------------------------------------
-
- * Copyright (c) 1995-2019 The PNG Reference Library Authors.
- * Copyright (c) 2018-2019 Cosmin Truta.
- * Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson.
- * Copyright (c) 1996-1997 Andreas Dilger.
- * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.
-
-The software is supplied "as is", without warranty of any kind,
-express or implied, including, without limitation, the warranties
-of merchantability, fitness for a particular purpose, title, and
-non-infringement.  In no event shall the Copyright owners, or
-anyone distributing the software, be liable for any damages or
-other liability, whether in contract, tort or otherwise, arising
-from, out of, or in connection with the software, or the use or
-other dealings in the software, even if advised of the possibility
-of such damage.
-
-Permission is hereby granted to use, copy, modify, and distribute
-this software, or portions hereof, for any purpose, without fee,
-subject to the following restrictions:
-
- 1. The origin of this software must not be misrepresented; you
-    must not claim that you wrote the original software.  If you
-    use this software in a product, an acknowledgment in the product
-    documentation would be appreciated, but is not required.
-
- 2. Altered source versions must be plainly marked as such, and must
-    not be misrepresented as being the original software.
-
- 3. This Copyright notice may not be removed or altered from any
-    source or altered source distribution.
-
-
-PNG Reference Library License version 1 (for libpng 0.5 through 1.6.35)
------------------------------------------------------------------------
-
-libpng versions 1.0.7, July 1, 2000, through 1.6.35, July 15, 2018 are
-Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson, are
-derived from libpng-1.0.6, and are distributed according to the same
-disclaimer and license as libpng-1.0.6 with the following individuals
-added to the list of Contributing Authors:
-
-    Simon-Pierre Cadieux
-    Eric S. Raymond
-    Mans Rullgard
-    Cosmin Truta
-    Gilles Vollant
-    James Yu
-    Mandar Sahastrabuddhe
-    Google Inc.
-    Vadim Barkov
-
-and with the following additions to the disclaimer:
-
-    There is no warranty against interference with your enjoyment of
-    the library or against infringement.  There is no warranty that our
-    efforts or the library will fulfill any of your particular purposes
-    or needs.  This library is provided with all faults, and the entire
-    risk of satisfactory quality, performance, accuracy, and effort is
-    with the user.
-
-Some files in the "contrib" directory and some configure-generated
-files that are distributed with libpng have other copyright owners, and
-are released under other open source licenses.
-
-libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are
-Copyright (c) 1998-2000 Glenn Randers-Pehrson, are derived from
-libpng-0.96, and are distributed according to the same disclaimer and
-license as libpng-0.96, with the following individuals added to the
-list of Contributing Authors:
-
-    Tom Lane
-    Glenn Randers-Pehrson
-    Willem van Schaik
-
-libpng versions 0.89, June 1996, through 0.96, May 1997, are
-Copyright (c) 1996-1997 Andreas Dilger, are derived from libpng-0.88,
-and are distributed according to the same disclaimer and license as
-libpng-0.88, with the following individuals added to the list of
-Contributing Authors:
-
-    John Bowler
-    Kevin Bracey
-    Sam Bushell
-    Magnus Holmgren
-    Greg Roelofs
-    Tom Tanner
-
-Some files in the "scripts" directory have other copyright owners,
-but are released under this license.
-
-libpng versions 0.5, May 1995, through 0.88, January 1996, are
-Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.
-
-For the purposes of this copyright and license, "Contributing Authors"
-is defined as the following set of individuals:
-
-    Andreas Dilger
-    Dave Martindale
-    Guy Eric Schalnat
-    Paul Schmidt
-    Tim Wegner
-
-The PNG Reference Library is supplied "AS IS".  The Contributing
-Authors and Group 42, Inc. disclaim all warranties, expressed or
-implied, including, without limitation, the warranties of
-merchantability and of fitness for any purpose.  The Contributing
-Authors and Group 42, Inc. assume no liability for direct, indirect,
-incidental, special, exemplary, or consequential damages, which may
-result from the use of the PNG Reference Library, even if advised of
-the possibility of such damage.
-
-Permission is hereby granted to use, copy, modify, and distribute this
-source code, or portions hereof, for any purpose, without fee, subject
-to the following restrictions:
-
- 1. The origin of this source code must not be misrepresented.
-
- 2. Altered versions must be plainly marked as such and must not
-    be misrepresented as being the original source.
-
- 3. This Copyright notice may not be removed or altered from any
-    source or altered source distribution.
-
-The Contributing Authors and Group 42, Inc. specifically permit,
-without fee, and encourage the use of this source code as a component
-to supporting the PNG file format in commercial products.  If you use
-this source code in a product, acknowledgment is not required but would
-be appreciated.
-
-
diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/mesa3d.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/mesa3d.md deleted file mode 100644 index cdaa1ac..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/mesa3d.md +++ /dev/null @@ -1,134 +0,0 @@ -## Mesa 3-D Graphics Library v21.0.3 - -### Mesa License - -``` -Copyright (C) 1999-2007 Brian Paul All Rights Reserved. - -Permission is hereby granted, free of charge, to any person obtaining a -copy of this software and associated documentation files (the "Software"), -to deal in the Software without restriction, including without limitation -the rights to use, copy, modify, merge, publish, distribute, sublicense, -and/or sell copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - -Attention, Contributors - -When contributing to the Mesa project you must agree to the licensing terms -of the component to which you're contributing. -The following section lists the primary components of the Mesa distribution -and their respective licenses. -Mesa Component Licenses - - - -Component Location License ------------------------------------------------------------------- -Main Mesa code src/mesa/ MIT -Device drivers src/mesa/drivers/* MIT, generally - -Gallium code src/gallium/ MIT - -Ext headers GL/glext.h Khronos - GL/glxext.h Khronos - GL/wglext.h Khronos - KHR/khrplatform.h Khronos - -***************************************************************************** - ----- -include/GL/gl.h : - - - Mesa 3-D graphics library - - Copyright (C) 1999-2006 Brian Paul All Rights Reserved. - Copyright (C) 2009 VMware, Inc. All Rights Reserved. - - Permission is hereby granted, free of charge, to any person obtaining a - copy of this software and associated documentation files (the "Software"), - to deal in the Software without restriction, including without limitation - the rights to use, copy, modify, merge, publish, distribute, sublicense, - and/or sell copies of the Software, and to permit persons to whom the - Software is furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included - in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR - OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, - ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - OTHER DEALINGS IN THE SOFTWARE. - - ***************************************************************************** - ----- -include/GL/glext.h -include/GL/glxext.h -include/GL/wglxext.h : - - - Copyright (c) 2013 - 2018 The Khronos Group Inc. - - Permission is hereby granted, free of charge, to any person obtaining a - copy of this software and/or associated documentation files (the - "Materials"), to deal in the Materials without restriction, including - without limitation the rights to use, copy, modify, merge, publish, - distribute, sublicense, and/or sell copies of the Materials, and to - permit persons to whom the Materials are furnished to do so, subject to - the following conditions: - - The above copyright notice and this permission notice shall be included - in all copies or substantial portions of the Materials. - - THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. - IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY - CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, - TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE - MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. - - ***************************************************************************** - ----- -include/KHR/khrplatform.h : - - Copyright (c) 2008 - 2018 The Khronos Group Inc. - - Permission is hereby granted, free of charge, to any person obtaining a - copy of this software and/or associated documentation files (the - "Materials"), to deal in the Materials without restriction, including - without limitation the rights to use, copy, modify, merge, publish, - distribute, sublicense, and/or sell copies of the Materials, and to - permit persons to whom the Materials are furnished to do so, subject to - the following conditions: - - The above copyright notice and this permission notice shall be included - in all copies or substantial portions of the Materials. - - THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. - IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY - CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, - TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE - MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. - - ***************************************************************************** - -``` diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/xwd.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/xwd.md deleted file mode 100644 index f3c5327..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.desktop/xwd.md +++ /dev/null @@ -1,34 +0,0 @@ -## xwd v1.0.7 - -### xwd utility -
-
-This is the copyright for the files in src/java.desktop/unix/native/libawt_xawt:
-list.h, multiVis.h, wsutils.h, list.c, multiVis.c
-
-Copyright 1994 Hewlett-Packard Co.
-Copyright 1996, 1998  The Open Group
-
-Permission to use, copy, modify, distribute, and sell this software and its
-documentation for any purpose is hereby granted without fee, provided that
-the above copyright notice appear in all copies and that both that
-copyright notice and this permission notice appear in supporting
-documentation.
-
-The above copyright notice and this permission notice shall be included
-in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
-OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
-ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the name of The Open Group shall
-not be used in advertising or otherwise to promote the sale, use or
-other dealings in this Software without prior written authorization
-from The Open Group.
-
-
diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.logging/ADDITIONAL_LICENSE_INFO b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.logging/ADDITIONAL_LICENSE_INFO deleted file mode 120000 index 76b7b2f..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.logging/ADDITIONAL_LICENSE_INFO +++ /dev/null @@ -1 +0,0 @@ -../java.base/ADDITIONAL_LICENSE_INFO \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.logging/ASSEMBLY_EXCEPTION b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.logging/ASSEMBLY_EXCEPTION deleted file mode 120000 index bd8da86..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.logging/ASSEMBLY_EXCEPTION +++ /dev/null @@ -1 +0,0 @@ -../java.base/ASSEMBLY_EXCEPTION \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.logging/LICENSE b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.logging/LICENSE deleted file mode 120000 index 902705b..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.logging/LICENSE +++ /dev/null @@ -1 +0,0 @@ -../java.base/LICENSE \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.net.http/ADDITIONAL_LICENSE_INFO b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.net.http/ADDITIONAL_LICENSE_INFO deleted file mode 120000 index 76b7b2f..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.net.http/ADDITIONAL_LICENSE_INFO +++ /dev/null @@ -1 +0,0 @@ -../java.base/ADDITIONAL_LICENSE_INFO \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.net.http/ASSEMBLY_EXCEPTION b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.net.http/ASSEMBLY_EXCEPTION deleted file mode 120000 index bd8da86..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.net.http/ASSEMBLY_EXCEPTION +++ /dev/null @@ -1 +0,0 @@ -../java.base/ASSEMBLY_EXCEPTION \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.net.http/LICENSE b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.net.http/LICENSE deleted file mode 120000 index 902705b..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.net.http/LICENSE +++ /dev/null @@ -1 +0,0 @@ -../java.base/LICENSE \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.prefs/ADDITIONAL_LICENSE_INFO b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.prefs/ADDITIONAL_LICENSE_INFO deleted file mode 120000 index 76b7b2f..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.prefs/ADDITIONAL_LICENSE_INFO +++ /dev/null @@ -1 +0,0 @@ -../java.base/ADDITIONAL_LICENSE_INFO \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.prefs/ASSEMBLY_EXCEPTION b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.prefs/ASSEMBLY_EXCEPTION deleted file mode 120000 index bd8da86..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.prefs/ASSEMBLY_EXCEPTION +++ /dev/null @@ -1 +0,0 @@ -../java.base/ASSEMBLY_EXCEPTION \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.prefs/LICENSE b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.prefs/LICENSE deleted file mode 120000 index 902705b..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.prefs/LICENSE +++ /dev/null @@ -1 +0,0 @@ -../java.base/LICENSE \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.sql/ADDITIONAL_LICENSE_INFO b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.sql/ADDITIONAL_LICENSE_INFO deleted file mode 120000 index 76b7b2f..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.sql/ADDITIONAL_LICENSE_INFO +++ /dev/null @@ -1 +0,0 @@ -../java.base/ADDITIONAL_LICENSE_INFO \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.sql/ASSEMBLY_EXCEPTION b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.sql/ASSEMBLY_EXCEPTION deleted file mode 120000 index bd8da86..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.sql/ASSEMBLY_EXCEPTION +++ /dev/null @@ -1 +0,0 @@ -../java.base/ASSEMBLY_EXCEPTION \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.sql/LICENSE b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.sql/LICENSE deleted file mode 120000 index 902705b..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.sql/LICENSE +++ /dev/null @@ -1 +0,0 @@ -../java.base/LICENSE \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.transaction.xa/ADDITIONAL_LICENSE_INFO b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.transaction.xa/ADDITIONAL_LICENSE_INFO deleted file mode 120000 index 76b7b2f..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.transaction.xa/ADDITIONAL_LICENSE_INFO +++ /dev/null @@ -1 +0,0 @@ -../java.base/ADDITIONAL_LICENSE_INFO \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.transaction.xa/ASSEMBLY_EXCEPTION b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.transaction.xa/ASSEMBLY_EXCEPTION deleted file mode 120000 index bd8da86..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.transaction.xa/ASSEMBLY_EXCEPTION +++ /dev/null @@ -1 +0,0 @@ -../java.base/ASSEMBLY_EXCEPTION \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.transaction.xa/LICENSE b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.transaction.xa/LICENSE deleted file mode 120000 index 902705b..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.transaction.xa/LICENSE +++ /dev/null @@ -1 +0,0 @@ -../java.base/LICENSE \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/ADDITIONAL_LICENSE_INFO b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/ADDITIONAL_LICENSE_INFO deleted file mode 120000 index 76b7b2f..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/ADDITIONAL_LICENSE_INFO +++ /dev/null @@ -1 +0,0 @@ -../java.base/ADDITIONAL_LICENSE_INFO \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/ASSEMBLY_EXCEPTION b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/ASSEMBLY_EXCEPTION deleted file mode 120000 index bd8da86..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/ASSEMBLY_EXCEPTION +++ /dev/null @@ -1 +0,0 @@ -../java.base/ASSEMBLY_EXCEPTION \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/LICENSE b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/LICENSE deleted file mode 120000 index 902705b..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/LICENSE +++ /dev/null @@ -1 +0,0 @@ -../java.base/LICENSE \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/bcel.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/bcel.md deleted file mode 100644 index 6dffd07..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/bcel.md +++ /dev/null @@ -1,219 +0,0 @@ -## Apache Commons Byte Code Engineering Library (BCEL) Version 6.5.0 - -### Apache Commons BCEL Notice -
-
-    Apache Commons BCEL
-    Copyright 2004-2020 The Apache Software Foundation
-
-    This product includes software developed at
-    The Apache Software Foundation (https://www.apache.org/).
-
-
- -### Apache 2.0 License -
-
-                              Apache License
-                        Version 2.0, January 2004
-                     http://www.apache.org/licenses/
-
-TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-1. Definitions.
-
-   "License" shall mean the terms and conditions for use, reproduction,
-   and distribution as defined by Sections 1 through 9 of this document.
-
-   "Licensor" shall mean the copyright owner or entity authorized by
-   the copyright owner that is granting the License.
-
-   "Legal Entity" shall mean the union of the acting entity and all
-   other entities that control, are controlled by, or are under common
-   control with that entity. For the purposes of this definition,
-   "control" means (i) the power, direct or indirect, to cause the
-   direction or management of such entity, whether by contract or
-   otherwise, or (ii) ownership of fifty percent (50%) or more of the
-   outstanding shares, or (iii) beneficial ownership of such entity.
-
-   "You" (or "Your") shall mean an individual or Legal Entity
-   exercising permissions granted by this License.
-
-   "Source" form shall mean the preferred form for making modifications,
-   including but not limited to software source code, documentation
-   source, and configuration files.
-
-   "Object" form shall mean any form resulting from mechanical
-   transformation or translation of a Source form, including but
-   not limited to compiled object code, generated documentation,
-   and conversions to other media types.
-
-   "Work" shall mean the work of authorship, whether in Source or
-   Object form, made available under the License, as indicated by a
-   copyright notice that is included in or attached to the work
-   (an example is provided in the Appendix below).
-
-   "Derivative Works" shall mean any work, whether in Source or Object
-   form, that is based on (or derived from) the Work and for which the
-   editorial revisions, annotations, elaborations, or other modifications
-   represent, as a whole, an original work of authorship. For the purposes
-   of this License, Derivative Works shall not include works that remain
-   separable from, or merely link (or bind by name) to the interfaces of,
-   the Work and Derivative Works thereof.
-
-   "Contribution" shall mean any work of authorship, including
-   the original version of the Work and any modifications or additions
-   to that Work or Derivative Works thereof, that is intentionally
-   submitted to Licensor for inclusion in the Work by the copyright owner
-   or by an individual or Legal Entity authorized to submit on behalf of
-   the copyright owner. For the purposes of this definition, "submitted"
-   means any form of electronic, verbal, or written communication sent
-   to the Licensor or its representatives, including but not limited to
-   communication on electronic mailing lists, source code control systems,
-   and issue tracking systems that are managed by, or on behalf of, the
-   Licensor for the purpose of discussing and improving the Work, but
-   excluding communication that is conspicuously marked or otherwise
-   designated in writing by the copyright owner as "Not a Contribution."
-
-   "Contributor" shall mean Licensor and any individual or Legal Entity
-   on behalf of whom a Contribution has been received by Licensor and
-   subsequently incorporated within the Work.
-
-2. Grant of Copyright License. Subject to the terms and conditions of
-   this License, each Contributor hereby grants to You a perpetual,
-   worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-   copyright license to reproduce, prepare Derivative Works of,
-   publicly display, publicly perform, sublicense, and distribute the
-   Work and such Derivative Works in Source or Object form.
-
-3. Grant of Patent License. Subject to the terms and conditions of
-   this License, each Contributor hereby grants to You a perpetual,
-   worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-   (except as stated in this section) patent license to make, have made,
-   use, offer to sell, sell, import, and otherwise transfer the Work,
-   where such license applies only to those patent claims licensable
-   by such Contributor that are necessarily infringed by their
-   Contribution(s) alone or by combination of their Contribution(s)
-   with the Work to which such Contribution(s) was submitted. If You
-   institute patent litigation against any entity (including a
-   cross-claim or counterclaim in a lawsuit) alleging that the Work
-   or a Contribution incorporated within the Work constitutes direct
-   or contributory patent infringement, then any patent licenses
-   granted to You under this License for that Work shall terminate
-   as of the date such litigation is filed.
-
-4. Redistribution. You may reproduce and distribute copies of the
-   Work or Derivative Works thereof in any medium, with or without
-   modifications, and in Source or Object form, provided that You
-   meet the following conditions:
-
-   (a) You must give any other recipients of the Work or
-       Derivative Works a copy of this License; and
-
-   (b) You must cause any modified files to carry prominent notices
-       stating that You changed the files; and
-
-   (c) You must retain, in the Source form of any Derivative Works
-       that You distribute, all copyright, patent, trademark, and
-       attribution notices from the Source form of the Work,
-       excluding those notices that do not pertain to any part of
-       the Derivative Works; and
-
-   (d) If the Work includes a "NOTICE" text file as part of its
-       distribution, then any Derivative Works that You distribute must
-       include a readable copy of the attribution notices contained
-       within such NOTICE file, excluding those notices that do not
-       pertain to any part of the Derivative Works, in at least one
-       of the following places: within a NOTICE text file distributed
-       as part of the Derivative Works; within the Source form or
-       documentation, if provided along with the Derivative Works; or,
-       within a display generated by the Derivative Works, if and
-       wherever such third-party notices normally appear. The contents
-       of the NOTICE file are for informational purposes only and
-       do not modify the License. You may add Your own attribution
-       notices within Derivative Works that You distribute, alongside
-       or as an addendum to the NOTICE text from the Work, provided
-       that such additional attribution notices cannot be construed
-       as modifying the License.
-
-   You may add Your own copyright statement to Your modifications and
-   may provide additional or different license terms and conditions
-   for use, reproduction, or distribution of Your modifications, or
-   for any such Derivative Works as a whole, provided Your use,
-   reproduction, and distribution of the Work otherwise complies with
-   the conditions stated in this License.
-
-5. Submission of Contributions. Unless You explicitly state otherwise,
-   any Contribution intentionally submitted for inclusion in the Work
-   by You to the Licensor shall be under the terms and conditions of
-   this License, without any additional terms or conditions.
-   Notwithstanding the above, nothing herein shall supersede or modify
-   the terms of any separate license agreement you may have executed
-   with Licensor regarding such Contributions.
-
-6. Trademarks. This License does not grant permission to use the trade
-   names, trademarks, service marks, or product names of the Licensor,
-   except as required for reasonable and customary use in describing the
-   origin of the Work and reproducing the content of the NOTICE file.
-
-7. Disclaimer of Warranty. Unless required by applicable law or
-   agreed to in writing, Licensor provides the Work (and each
-   Contributor provides its Contributions) on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-   implied, including, without limitation, any warranties or conditions
-   of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-   PARTICULAR PURPOSE. You are solely responsible for determining the
-   appropriateness of using or redistributing the Work and assume any
-   risks associated with Your exercise of permissions under this License.
-
-8. Limitation of Liability. In no event and under no legal theory,
-   whether in tort (including negligence), contract, or otherwise,
-   unless required by applicable law (such as deliberate and grossly
-   negligent acts) or agreed to in writing, shall any Contributor be
-   liable to You for damages, including any direct, indirect, special,
-   incidental, or consequential damages of any character arising as a
-   result of this License or out of the use or inability to use the
-   Work (including but not limited to damages for loss of goodwill,
-   work stoppage, computer failure or malfunction, or any and all
-   other commercial damages or losses), even if such Contributor
-   has been advised of the possibility of such damages.
-
-9. Accepting Warranty or Additional Liability. While redistributing
-   the Work or Derivative Works thereof, You may choose to offer,
-   and charge a fee for, acceptance of support, warranty, indemnity,
-   or other liability obligations and/or rights consistent with this
-   License. However, in accepting such obligations, You may act only
-   on Your own behalf and on Your sole responsibility, not on behalf
-   of any other Contributor, and only if You agree to indemnify,
-   defend, and hold each Contributor harmless for any liability
-   incurred by, or claims asserted against, such Contributor by reason
-   of your accepting any such warranty or additional liability.
-
-END OF TERMS AND CONDITIONS
-
-APPENDIX: How to apply the Apache License to your work.
-
-   To apply the Apache License to your work, attach the following
-   boilerplate notice, with the fields enclosed by brackets "[]"
-   replaced with your own identifying information. (Don't include
-   the brackets!)  The text should be enclosed in the appropriate
-   comment syntax for the file format. We also recommend that a
-   file or class name and description of purpose be included on the
-   same "printed page" as the copyright notice for easier
-   identification within third-party archives.
-
-Copyright [yyyy] [name of copyright owner]
-
-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
-
-    http://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.
-
-
diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/dom.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/dom.md deleted file mode 100644 index b0fb1ae..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/dom.md +++ /dev/null @@ -1,62 +0,0 @@ -## DOM Level 3 Core Specification v1.0 - -### W3C License -
-
-W3C SOFTWARE NOTICE AND LICENSE
-
-http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
-
-This work (and included software, documentation such as READMEs, or other
-related items) is being provided by the copyright holders under the following
-license. By obtaining, using and/or copying this work, you (the licensee)
-agree that you have read, understood, and will comply with the following terms
-and conditions.
-
-Permission to copy, modify, and distribute this software and its
-documentation, with or without modification, for any purpose and without fee
-or royalty is hereby granted, provided that you include the following on ALL
-copies of the software and documentation or portions thereof, including
-modifications:
-
-   1.The full text of this NOTICE in a location viewable to users of the
-   redistributed or derivative work.
-
-   2.Any pre-existing intellectual property disclaimers, notices, or terms and
-   conditions. If none exist, the W3C Software Short Notice should be included
-   (hypertext is preferred, text is permitted) within the body of any
-   redistributed or derivative code.
-
-   3.Notice of any changes or modifications to the files, including the date
-   changes were made. (We recommend you provide URIs to the location from
-   which the code is derived.)
-
-THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS
-MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT
-LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR
-PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY
-THIRD PARTY PATENTS,COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
-
-COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL
-OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR
-DOCUMENTATION.  The name and trademarks of copyright holders may NOT be used
-in advertising or publicity pertaining to the software without specific,
-written prior permission. Title to copyright in this software and any
-associated documentation will at all times remain with copyright holders.
-
-____________________________________
-
-This formulation of W3C's notice and license became active on December 31
-2002. This version removes the copyright ownership notice such that this
-license can be used with materials other than those owned by the W3C, reflects
-that ERCIM is now a host of the W3C, includes references to this specific
-dated version of the license, and removes the ambiguous grant of "use".
-Otherwise, this version is the same as the previous version and is written so
-as to preserve the Free Software Foundation's assessment of GPL compatibility
-and OSI's certification under the Open Source Definition. Please see our
-Copyright FAQ for common questions about using materials from our site,
-including specific terms and conditions for packages like libwww, Amaya, and
-Jigsaw. Other questions about this notice can be directed to
-site-policy@w3.org.
-
-
diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/jcup.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/jcup.md deleted file mode 100644 index a0ff3df..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/jcup.md +++ /dev/null @@ -1,24 +0,0 @@ -## CUP Parser Generator for Java v 0.11b - -### CUP Parser Generator License -
-
-Copyright 1996-2015 by Scott Hudson, Frank Flannery, C. Scott Ananian, Michael Petter
-
-Permission to use, copy, modify, and distribute this software and its
-documentation for any purpose and without fee is hereby granted, provided
-that the above copyright notice appear in all copies and that both
-the copyright notice and this permission notice and warranty disclaimer
-appear in supporting documentation, and that the names of the authors or
-their employers not be used in advertising or publicity pertaining to
-distribution of the software without specific, written prior permission.
-
-The authors and their employers disclaim all warranties with regard to
-this software, including all implied warranties of merchantability and
-fitness. In no event shall the authors or their employers be liable for
-any special, indirect or consequential damages or any damages whatsoever
-resulting from loss of use, data or profits, whether in an action of
-contract, negligence or other tortious action, arising out of or in
-connection with the use or performance of this software.
-
-
diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/xalan.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/xalan.md deleted file mode 100644 index 924bce8..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/xalan.md +++ /dev/null @@ -1,255 +0,0 @@ -## Apache Xalan v2.7.2 - -### Apache Xalan Notice -
-
-    ======================================================================================
-    ==  NOTICE file corresponding to the section 4d of the Apache License, Version 2.0, ==
-    ==  in this case for the Apache Xalan distribution.                                 ==
-    ======================================================================================
-
-   This product includes software developed by
-   The Apache Software Foundation (http://www.apache.org/).
-
-   Specifically, we only include the XSLTC portion of the source from the Xalan distribution. 
-   The Xalan project has two processors: an interpretive one (Xalan Interpretive) and a 
-   compiled one (The XSLT Compiler (XSLTC)). We *only* use the XSLTC part of Xalan; We use
-   the source from the packages that are part of the XSLTC sources.
-
-   Portions of this software was originally based on the following:
-
-     - software copyright (c) 1999-2002, Lotus Development Corporation., http://www.lotus.com.
-     - software copyright (c) 2001-2002, Sun Microsystems., http://www.sun.com.
-     - software copyright (c) 2003, IBM Corporation., http://www.ibm.com.
-     - voluntary contributions made by Ovidiu Predescu (ovidiu@cup.hp.com) on behalf of the
-       Apache Software Foundation and was originally developed at Hewlett Packard Company.
-
-
- -### Apache 2.0 License -
-
-                              Apache License
-                        Version 2.0, January 2004
-                     http://www.apache.org/licenses/
-
-TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-1. Definitions.
-
-   "License" shall mean the terms and conditions for use, reproduction,
-   and distribution as defined by Sections 1 through 9 of this document.
-
-   "Licensor" shall mean the copyright owner or entity authorized by
-   the copyright owner that is granting the License.
-
-   "Legal Entity" shall mean the union of the acting entity and all
-   other entities that control, are controlled by, or are under common
-   control with that entity. For the purposes of this definition,
-   "control" means (i) the power, direct or indirect, to cause the
-   direction or management of such entity, whether by contract or
-   otherwise, or (ii) ownership of fifty percent (50%) or more of the
-   outstanding shares, or (iii) beneficial ownership of such entity.
-
-   "You" (or "Your") shall mean an individual or Legal Entity
-   exercising permissions granted by this License.
-
-   "Source" form shall mean the preferred form for making modifications,
-   including but not limited to software source code, documentation
-   source, and configuration files.
-
-   "Object" form shall mean any form resulting from mechanical
-   transformation or translation of a Source form, including but
-   not limited to compiled object code, generated documentation,
-   and conversions to other media types.
-
-   "Work" shall mean the work of authorship, whether in Source or
-   Object form, made available under the License, as indicated by a
-   copyright notice that is included in or attached to the work
-   (an example is provided in the Appendix below).
-
-   "Derivative Works" shall mean any work, whether in Source or Object
-   form, that is based on (or derived from) the Work and for which the
-   editorial revisions, annotations, elaborations, or other modifications
-   represent, as a whole, an original work of authorship. For the purposes
-   of this License, Derivative Works shall not include works that remain
-   separable from, or merely link (or bind by name) to the interfaces of,
-   the Work and Derivative Works thereof.
-
-   "Contribution" shall mean any work of authorship, including
-   the original version of the Work and any modifications or additions
-   to that Work or Derivative Works thereof, that is intentionally
-   submitted to Licensor for inclusion in the Work by the copyright owner
-   or by an individual or Legal Entity authorized to submit on behalf of
-   the copyright owner. For the purposes of this definition, "submitted"
-   means any form of electronic, verbal, or written communication sent
-   to the Licensor or its representatives, including but not limited to
-   communication on electronic mailing lists, source code control systems,
-   and issue tracking systems that are managed by, or on behalf of, the
-   Licensor for the purpose of discussing and improving the Work, but
-   excluding communication that is conspicuously marked or otherwise
-   designated in writing by the copyright owner as "Not a Contribution."
-
-   "Contributor" shall mean Licensor and any individual or Legal Entity
-   on behalf of whom a Contribution has been received by Licensor and
-   subsequently incorporated within the Work.
-
-2. Grant of Copyright License. Subject to the terms and conditions of
-   this License, each Contributor hereby grants to You a perpetual,
-   worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-   copyright license to reproduce, prepare Derivative Works of,
-   publicly display, publicly perform, sublicense, and distribute the
-   Work and such Derivative Works in Source or Object form.
-
-3. Grant of Patent License. Subject to the terms and conditions of
-   this License, each Contributor hereby grants to You a perpetual,
-   worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-   (except as stated in this section) patent license to make, have made,
-   use, offer to sell, sell, import, and otherwise transfer the Work,
-   where such license applies only to those patent claims licensable
-   by such Contributor that are necessarily infringed by their
-   Contribution(s) alone or by combination of their Contribution(s)
-   with the Work to which such Contribution(s) was submitted. If You
-   institute patent litigation against any entity (including a
-   cross-claim or counterclaim in a lawsuit) alleging that the Work
-   or a Contribution incorporated within the Work constitutes direct
-   or contributory patent infringement, then any patent licenses
-   granted to You under this License for that Work shall terminate
-   as of the date such litigation is filed.
-
-4. Redistribution. You may reproduce and distribute copies of the
-   Work or Derivative Works thereof in any medium, with or without
-   modifications, and in Source or Object form, provided that You
-   meet the following conditions:
-
-   (a) You must give any other recipients of the Work or
-       Derivative Works a copy of this License; and
-
-   (b) You must cause any modified files to carry prominent notices
-       stating that You changed the files; and
-
-   (c) You must retain, in the Source form of any Derivative Works
-       that You distribute, all copyright, patent, trademark, and
-       attribution notices from the Source form of the Work,
-       excluding those notices that do not pertain to any part of
-       the Derivative Works; and
-
-   (d) If the Work includes a "NOTICE" text file as part of its
-       distribution, then any Derivative Works that You distribute must
-       include a readable copy of the attribution notices contained
-       within such NOTICE file, excluding those notices that do not
-       pertain to any part of the Derivative Works, in at least one
-       of the following places: within a NOTICE text file distributed
-       as part of the Derivative Works; within the Source form or
-       documentation, if provided along with the Derivative Works; or,
-       within a display generated by the Derivative Works, if and
-       wherever such third-party notices normally appear. The contents
-       of the NOTICE file are for informational purposes only and
-       do not modify the License. You may add Your own attribution
-       notices within Derivative Works that You distribute, alongside
-       or as an addendum to the NOTICE text from the Work, provided
-       that such additional attribution notices cannot be construed
-       as modifying the License.
-
-   You may add Your own copyright statement to Your modifications and
-   may provide additional or different license terms and conditions
-   for use, reproduction, or distribution of Your modifications, or
-   for any such Derivative Works as a whole, provided Your use,
-   reproduction, and distribution of the Work otherwise complies with
-   the conditions stated in this License.
-
-5. Submission of Contributions. Unless You explicitly state otherwise,
-   any Contribution intentionally submitted for inclusion in the Work
-   by You to the Licensor shall be under the terms and conditions of
-   this License, without any additional terms or conditions.
-   Notwithstanding the above, nothing herein shall supersede or modify
-   the terms of any separate license agreement you may have executed
-   with Licensor regarding such Contributions.
-
-6. Trademarks. This License does not grant permission to use the trade
-   names, trademarks, service marks, or product names of the Licensor,
-   except as required for reasonable and customary use in describing the
-   origin of the Work and reproducing the content of the NOTICE file.
-
-7. Disclaimer of Warranty. Unless required by applicable law or
-   agreed to in writing, Licensor provides the Work (and each
-   Contributor provides its Contributions) on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-   implied, including, without limitation, any warranties or conditions
-   of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-   PARTICULAR PURPOSE. You are solely responsible for determining the
-   appropriateness of using or redistributing the Work and assume any
-   risks associated with Your exercise of permissions under this License.
-
-8. Limitation of Liability. In no event and under no legal theory,
-   whether in tort (including negligence), contract, or otherwise,
-   unless required by applicable law (such as deliberate and grossly
-   negligent acts) or agreed to in writing, shall any Contributor be
-   liable to You for damages, including any direct, indirect, special,
-   incidental, or consequential damages of any character arising as a
-   result of this License or out of the use or inability to use the
-   Work (including but not limited to damages for loss of goodwill,
-   work stoppage, computer failure or malfunction, or any and all
-   other commercial damages or losses), even if such Contributor
-   has been advised of the possibility of such damages.
-
-9. Accepting Warranty or Additional Liability. While redistributing
-   the Work or Derivative Works thereof, You may choose to offer,
-   and charge a fee for, acceptance of support, warranty, indemnity,
-   or other liability obligations and/or rights consistent with this
-   License. However, in accepting such obligations, You may act only
-   on Your own behalf and on Your sole responsibility, not on behalf
-   of any other Contributor, and only if You agree to indemnify,
-   defend, and hold each Contributor harmless for any liability
-   incurred by, or claims asserted against, such Contributor by reason
-   of your accepting any such warranty or additional liability.
-
-END OF TERMS AND CONDITIONS
-
-APPENDIX: How to apply the Apache License to your work.
-
-   To apply the Apache License to your work, attach the following
-   boilerplate notice, with the fields enclosed by brackets "[]"
-   replaced with your own identifying information. (Don't include
-   the brackets!)  The text should be enclosed in the appropriate
-   comment syntax for the file format. We also recommend that a
-   file or class name and description of purpose be included on the
-   same "printed page" as the copyright notice for easier
-   identification within third-party archives.
-
-Copyright [yyyy] [name of copyright owner]
-
-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
-
-    http://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.
-
-
-JLEX COPYRIGHT NOTICE, LICENSE AND DISCLAIMER.
-Copyright 1996-2003 by Elliot Joel Berk and C. Scott Ananian
-Permission to use, copy, modify, and distribute this software and 
-its documentation for any purpose and without fee is hereby granted, 
-provided that the above copyright notice appear in all copies and that 
-both the copyright notice and this permission notice and warranty 
-disclaimer appear in supporting documentation, and that the name of 
-the authors or their employers not be used in advertising or publicity 
-pertaining to distribution of the software without specific, written 
-prior permission.
-The authors and their employers disclaim all warranties with regard to 
-this software, including all implied warranties of merchantability and 
-fitness. In no event shall the authors or their employers be liable for 
-any special, indirect or consequential damages or any damages whatsoever 
-resulting from loss of use, data or profits, whether in an action of 
-contract, negligence or other tortious action, arising out of or in 
-connection with the use or performance of this software.The portions of 
-JLex output which are hard-coded into the JLex source code are (naturally) 
-covered by this same license.
-
-
diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/xerces.md b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/xerces.md deleted file mode 100644 index 3790b7a..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/java.xml/xerces.md +++ /dev/null @@ -1,229 +0,0 @@ -## Apache Xerces v2.12.2 - -### Apache Xerces Notice -
-    =========================================================================
-    == NOTICE file corresponding to section 4(d) of the Apache License,    ==
-    == Version 2.0, in this case for the Apache Xerces Java distribution.  ==
-    =========================================================================
-    
-    Apache Xerces Java
-    Copyright 1999-2022 The Apache Software Foundation
-
-    This product includes software developed at
-    The Apache Software Foundation (http://www.apache.org/).
-
-    Portions of this software were originally based on the following:
-    - software copyright (c) 1999, IBM Corporation., http://www.ibm.com.
-    - software copyright (c) 1999, Sun Microsystems., http://www.sun.com.
-    - voluntary contributions made by Paul Eng on behalf of the
-    Apache Software Foundation that were originally developed at iClick, Inc.,
-    software copyright (c) 1999.
-
- -### Apache 2.0 License -
-
-                              Apache License
-                        Version 2.0, January 2004
-                     http://www.apache.org/licenses/
-
-TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-1. Definitions.
-
-   "License" shall mean the terms and conditions for use, reproduction,
-   and distribution as defined by Sections 1 through 9 of this document.
-
-   "Licensor" shall mean the copyright owner or entity authorized by
-   the copyright owner that is granting the License.
-
-   "Legal Entity" shall mean the union of the acting entity and all
-   other entities that control, are controlled by, or are under common
-   control with that entity. For the purposes of this definition,
-   "control" means (i) the power, direct or indirect, to cause the
-   direction or management of such entity, whether by contract or
-   otherwise, or (ii) ownership of fifty percent (50%) or more of the
-   outstanding shares, or (iii) beneficial ownership of such entity.
-
-   "You" (or "Your") shall mean an individual or Legal Entity
-   exercising permissions granted by this License.
-
-   "Source" form shall mean the preferred form for making modifications,
-   including but not limited to software source code, documentation
-   source, and configuration files.
-
-   "Object" form shall mean any form resulting from mechanical
-   transformation or translation of a Source form, including but
-   not limited to compiled object code, generated documentation,
-   and conversions to other media types.
-
-   "Work" shall mean the work of authorship, whether in Source or
-   Object form, made available under the License, as indicated by a
-   copyright notice that is included in or attached to the work
-   (an example is provided in the Appendix below).
-
-   "Derivative Works" shall mean any work, whether in Source or Object
-   form, that is based on (or derived from) the Work and for which the
-   editorial revisions, annotations, elaborations, or other modifications
-   represent, as a whole, an original work of authorship. For the purposes
-   of this License, Derivative Works shall not include works that remain
-   separable from, or merely link (or bind by name) to the interfaces of,
-   the Work and Derivative Works thereof.
-
-   "Contribution" shall mean any work of authorship, including
-   the original version of the Work and any modifications or additions
-   to that Work or Derivative Works thereof, that is intentionally
-   submitted to Licensor for inclusion in the Work by the copyright owner
-   or by an individual or Legal Entity authorized to submit on behalf of
-   the copyright owner. For the purposes of this definition, "submitted"
-   means any form of electronic, verbal, or written communication sent
-   to the Licensor or its representatives, including but not limited to
-   communication on electronic mailing lists, source code control systems,
-   and issue tracking systems that are managed by, or on behalf of, the
-   Licensor for the purpose of discussing and improving the Work, but
-   excluding communication that is conspicuously marked or otherwise
-   designated in writing by the copyright owner as "Not a Contribution."
-
-   "Contributor" shall mean Licensor and any individual or Legal Entity
-   on behalf of whom a Contribution has been received by Licensor and
-   subsequently incorporated within the Work.
-
-2. Grant of Copyright License. Subject to the terms and conditions of
-   this License, each Contributor hereby grants to You a perpetual,
-   worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-   copyright license to reproduce, prepare Derivative Works of,
-   publicly display, publicly perform, sublicense, and distribute the
-   Work and such Derivative Works in Source or Object form.
-
-3. Grant of Patent License. Subject to the terms and conditions of
-   this License, each Contributor hereby grants to You a perpetual,
-   worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-   (except as stated in this section) patent license to make, have made,
-   use, offer to sell, sell, import, and otherwise transfer the Work,
-   where such license applies only to those patent claims licensable
-   by such Contributor that are necessarily infringed by their
-   Contribution(s) alone or by combination of their Contribution(s)
-   with the Work to which such Contribution(s) was submitted. If You
-   institute patent litigation against any entity (including a
-   cross-claim or counterclaim in a lawsuit) alleging that the Work
-   or a Contribution incorporated within the Work constitutes direct
-   or contributory patent infringement, then any patent licenses
-   granted to You under this License for that Work shall terminate
-   as of the date such litigation is filed.
-
-4. Redistribution. You may reproduce and distribute copies of the
-   Work or Derivative Works thereof in any medium, with or without
-   modifications, and in Source or Object form, provided that You
-   meet the following conditions:
-
-   (a) You must give any other recipients of the Work or
-       Derivative Works a copy of this License; and
-
-   (b) You must cause any modified files to carry prominent notices
-       stating that You changed the files; and
-
-   (c) You must retain, in the Source form of any Derivative Works
-       that You distribute, all copyright, patent, trademark, and
-       attribution notices from the Source form of the Work,
-       excluding those notices that do not pertain to any part of
-       the Derivative Works; and
-
-   (d) If the Work includes a "NOTICE" text file as part of its
-       distribution, then any Derivative Works that You distribute must
-       include a readable copy of the attribution notices contained
-       within such NOTICE file, excluding those notices that do not
-       pertain to any part of the Derivative Works, in at least one
-       of the following places: within a NOTICE text file distributed
-       as part of the Derivative Works; within the Source form or
-       documentation, if provided along with the Derivative Works; or,
-       within a display generated by the Derivative Works, if and
-       wherever such third-party notices normally appear. The contents
-       of the NOTICE file are for informational purposes only and
-       do not modify the License. You may add Your own attribution
-       notices within Derivative Works that You distribute, alongside
-       or as an addendum to the NOTICE text from the Work, provided
-       that such additional attribution notices cannot be construed
-       as modifying the License.
-
-   You may add Your own copyright statement to Your modifications and
-   may provide additional or different license terms and conditions
-   for use, reproduction, or distribution of Your modifications, or
-   for any such Derivative Works as a whole, provided Your use,
-   reproduction, and distribution of the Work otherwise complies with
-   the conditions stated in this License.
-
-5. Submission of Contributions. Unless You explicitly state otherwise,
-   any Contribution intentionally submitted for inclusion in the Work
-   by You to the Licensor shall be under the terms and conditions of
-   this License, without any additional terms or conditions.
-   Notwithstanding the above, nothing herein shall supersede or modify
-   the terms of any separate license agreement you may have executed
-   with Licensor regarding such Contributions.
-
-6. Trademarks. This License does not grant permission to use the trade
-   names, trademarks, service marks, or product names of the Licensor,
-   except as required for reasonable and customary use in describing the
-   origin of the Work and reproducing the content of the NOTICE file.
-
-7. Disclaimer of Warranty. Unless required by applicable law or
-   agreed to in writing, Licensor provides the Work (and each
-   Contributor provides its Contributions) on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-   implied, including, without limitation, any warranties or conditions
-   of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-   PARTICULAR PURPOSE. You are solely responsible for determining the
-   appropriateness of using or redistributing the Work and assume any
-   risks associated with Your exercise of permissions under this License.
-
-8. Limitation of Liability. In no event and under no legal theory,
-   whether in tort (including negligence), contract, or otherwise,
-   unless required by applicable law (such as deliberate and grossly
-   negligent acts) or agreed to in writing, shall any Contributor be
-   liable to You for damages, including any direct, indirect, special,
-   incidental, or consequential damages of any character arising as a
-   result of this License or out of the use or inability to use the
-   Work (including but not limited to damages for loss of goodwill,
-   work stoppage, computer failure or malfunction, or any and all
-   other commercial damages or losses), even if such Contributor
-   has been advised of the possibility of such damages.
-
-9. Accepting Warranty or Additional Liability. While redistributing
-   the Work or Derivative Works thereof, You may choose to offer,
-   and charge a fee for, acceptance of support, warranty, indemnity,
-   or other liability obligations and/or rights consistent with this
-   License. However, in accepting such obligations, You may act only
-   on Your own behalf and on Your sole responsibility, not on behalf
-   of any other Contributor, and only if You agree to indemnify,
-   defend, and hold each Contributor harmless for any liability
-   incurred by, or claims asserted against, such Contributor by reason
-   of your accepting any such warranty or additional liability.
-
-END OF TERMS AND CONDITIONS
-
-APPENDIX: How to apply the Apache License to your work.
-
-   To apply the Apache License to your work, attach the following
-   boilerplate notice, with the fields enclosed by brackets "[]"
-   replaced with your own identifying information. (Don't include
-   the brackets!)  The text should be enclosed in the appropriate
-   comment syntax for the file format. We also recommend that a
-   file or class name and description of purpose be included on the
-   same "printed page" as the copyright notice for easier
-   identification within third-party archives.
-
-Copyright [yyyy] [name of copyright owner]
-
-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
-
-    http://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.
-
-
diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/jdk.crypto.ec/ADDITIONAL_LICENSE_INFO b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/jdk.crypto.ec/ADDITIONAL_LICENSE_INFO deleted file mode 120000 index 76b7b2f..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/jdk.crypto.ec/ADDITIONAL_LICENSE_INFO +++ /dev/null @@ -1 +0,0 @@ -../java.base/ADDITIONAL_LICENSE_INFO \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/jdk.crypto.ec/ASSEMBLY_EXCEPTION b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/jdk.crypto.ec/ASSEMBLY_EXCEPTION deleted file mode 120000 index bd8da86..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/jdk.crypto.ec/ASSEMBLY_EXCEPTION +++ /dev/null @@ -1 +0,0 @@ -../java.base/ASSEMBLY_EXCEPTION \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/jdk.crypto.ec/LICENSE b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/jdk.crypto.ec/LICENSE deleted file mode 120000 index 902705b..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/legal/jdk.crypto.ec/LICENSE +++ /dev/null @@ -1 +0,0 @@ -../java.base/LICENSE \ No newline at end of file diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/classlist b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/classlist deleted file mode 100644 index 50c53d1..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/classlist +++ /dev/null @@ -1,1393 +0,0 @@ -# NOTE: Do not modify this file. -# -# This file is generated via the -XX:DumpLoadedClassList= option -# and is used at CDS archive dump time (see -Xshare:dump). -# -java/lang/Object -java/io/Serializable -java/lang/Comparable -java/lang/CharSequence -java/lang/constant/Constable -java/lang/constant/ConstantDesc -java/lang/String -java/lang/reflect/AnnotatedElement -java/lang/reflect/GenericDeclaration -java/lang/reflect/Type -java/lang/invoke/TypeDescriptor -java/lang/invoke/TypeDescriptor$OfField -java/lang/Class -java/lang/Cloneable -java/lang/ClassLoader -java/lang/System -java/lang/Throwable -java/lang/Error -java/lang/ThreadDeath -java/lang/Exception -java/lang/RuntimeException -java/lang/SecurityManager -java/security/ProtectionDomain -java/security/AccessControlContext -java/security/AccessController -java/security/SecureClassLoader -java/lang/ReflectiveOperationException -java/lang/ClassNotFoundException -java/lang/Record -java/lang/LinkageError -java/lang/NoClassDefFoundError -java/lang/ClassCastException -java/lang/ArrayStoreException -java/lang/VirtualMachineError -java/lang/InternalError -java/lang/OutOfMemoryError -java/lang/StackOverflowError -java/lang/IllegalMonitorStateException -java/lang/ref/Reference -java/lang/ref/SoftReference -java/lang/ref/WeakReference -java/lang/ref/FinalReference -java/lang/ref/PhantomReference -java/lang/ref/Finalizer -java/lang/Runnable -java/lang/Thread -java/lang/Thread$UncaughtExceptionHandler -java/lang/ThreadGroup -java/util/Dictionary -java/util/Map -java/util/Hashtable -java/util/Properties -java/lang/Module -java/lang/reflect/AccessibleObject -java/lang/reflect/Member -java/lang/reflect/Field -java/lang/reflect/Parameter -java/lang/reflect/Executable -java/lang/reflect/Method -java/lang/reflect/Constructor -jdk/internal/reflect/MagicAccessorImpl -jdk/internal/reflect/MethodAccessor -jdk/internal/reflect/MethodAccessorImpl -jdk/internal/reflect/ConstructorAccessor -jdk/internal/reflect/ConstructorAccessorImpl -jdk/internal/reflect/DelegatingClassLoader -jdk/internal/reflect/ConstantPool -jdk/internal/reflect/FieldAccessor -jdk/internal/reflect/FieldAccessorImpl -jdk/internal/reflect/UnsafeFieldAccessorImpl -jdk/internal/reflect/UnsafeStaticFieldAccessorImpl -java/lang/annotation/Annotation -jdk/internal/reflect/CallerSensitive -jdk/internal/reflect/NativeConstructorAccessorImpl -java/lang/invoke/MethodHandle -java/lang/invoke/DirectMethodHandle -java/lang/invoke/VarHandle -java/lang/invoke/MemberName -java/lang/invoke/ResolvedMethodName -java/lang/invoke/MethodHandleNatives -java/lang/invoke/LambdaForm -java/lang/invoke/TypeDescriptor$OfMethod -java/lang/invoke/MethodType -java/lang/BootstrapMethodError -java/lang/invoke/CallSite -jdk/internal/invoke/NativeEntryPoint -java/lang/invoke/MethodHandleNatives$CallSiteContext -java/lang/invoke/ConstantCallSite -java/lang/invoke/MutableCallSite -java/lang/invoke/VolatileCallSite -java/lang/AssertionStatusDirectives -java/lang/Appendable -java/lang/AbstractStringBuilder -java/lang/StringBuffer -java/lang/StringBuilder -jdk/internal/misc/UnsafeConstants -jdk/internal/misc/Unsafe -jdk/internal/module/Modules -java/lang/AutoCloseable -java/io/Closeable -java/io/InputStream -java/io/ByteArrayInputStream -java/net/URL -java/util/jar/Manifest -jdk/internal/loader/BuiltinClassLoader -jdk/internal/loader/ClassLoaders -jdk/internal/loader/ClassLoaders$AppClassLoader -jdk/internal/loader/ClassLoaders$PlatformClassLoader -java/security/CodeSource -java/util/AbstractMap -java/util/concurrent/ConcurrentMap -java/util/concurrent/ConcurrentHashMap -java/lang/Iterable -java/util/Collection -java/util/AbstractCollection -java/util/List -java/util/AbstractList -java/util/RandomAccess -java/util/ArrayList -java/lang/StackTraceElement -java/nio/Buffer -java/lang/StackWalker -java/lang/StackStreamFactory$AbstractStackWalker -java/lang/StackWalker$StackFrame -java/lang/StackFrameInfo -java/lang/LiveStackFrame -java/lang/LiveStackFrameInfo -java/util/concurrent/locks/AbstractOwnableSynchronizer -java/lang/Boolean -java/lang/Character -java/lang/Number -java/lang/Float -java/lang/Double -java/lang/Byte -java/lang/Short -java/lang/Integer -java/lang/Long -java/util/Iterator -java/lang/reflect/RecordComponent -jdk/internal/vm/vector/VectorSupport -jdk/internal/vm/vector/VectorSupport$VectorPayload -jdk/internal/vm/vector/VectorSupport$Vector -jdk/internal/vm/vector/VectorSupport$VectorMask -jdk/internal/vm/vector/VectorSupport$VectorShuffle -java/lang/Integer$IntegerCache -java/lang/Long$LongCache -java/lang/Byte$ByteCache -java/lang/Short$ShortCache -java/lang/Character$CharacterCache -java/util/jar/Attributes$Name -java/util/ImmutableCollections$AbstractImmutableMap -java/util/ImmutableCollections$MapN -sun/util/locale/BaseLocale -jdk/internal/module/ArchivedModuleGraph -java/lang/module/ModuleFinder -jdk/internal/module/SystemModuleFinders$SystemModuleFinder -java/util/ImmutableCollections$AbstractImmutableCollection -java/util/Set -java/util/ImmutableCollections$AbstractImmutableSet -java/util/ImmutableCollections$Set12 -java/lang/module/ModuleReference -jdk/internal/module/ModuleReferenceImpl -java/lang/module/ModuleDescriptor -java/lang/module/ModuleDescriptor$Version -java/util/ImmutableCollections$SetN -java/lang/module/ModuleDescriptor$Exports -java/lang/module/ModuleDescriptor$Provides -java/util/ImmutableCollections$AbstractImmutableList -java/util/ImmutableCollections$List12 -java/util/ImmutableCollections$ListN -java/net/URI -java/util/function/Supplier -jdk/internal/module/SystemModuleFinders$2 -jdk/internal/module/ModuleTarget -java/lang/module/ModuleDescriptor$Requires -java/lang/Enum -java/lang/module/ModuleDescriptor$Requires$Modifier -java/lang/module/Configuration -java/lang/module/ResolvedModule -java/util/function/Function -jdk/internal/module/ModuleLoaderMap$Mapper -java/util/HashMap -java/util/ImmutableCollections -java/lang/ModuleLayer -jdk/internal/math/FDBigInteger -java/lang/NullPointerException -java/lang/ArithmeticException -java/io/ObjectStreamField -java/util/Comparator -java/lang/String$CaseInsensitiveComparator -java/lang/Module$ArchivedData -jdk/internal/misc/CDS -java/util/Objects -jdk/internal/access/JavaLangReflectAccess -java/lang/reflect/ReflectAccess -jdk/internal/access/SharedSecrets -java/lang/invoke/MethodHandles -java/lang/invoke/MemberName$Factory -java/security/Guard -java/security/Permission -java/security/BasicPermission -java/lang/reflect/ReflectPermission -java/lang/StringLatin1 -java/lang/invoke/MethodHandles$Lookup -jdk/internal/reflect/Reflection -java/lang/Math -java/util/AbstractSet -java/util/ImmutableCollections$MapN$1 -java/util/ImmutableCollections$MapN$MapNIterator -java/util/Map$Entry -java/util/KeyValueHolder -java/util/HashMap$Node -java/util/LinkedHashMap$Entry -java/util/HashMap$TreeNode -java/lang/Runtime -java/util/concurrent/locks/Lock -java/util/concurrent/locks/ReentrantLock -java/util/concurrent/ConcurrentHashMap$Segment -java/util/concurrent/ConcurrentHashMap$CounterCell -java/util/concurrent/ConcurrentHashMap$Node -java/util/concurrent/locks/LockSupport -java/util/concurrent/ConcurrentHashMap$ReservationNode -java/security/PrivilegedAction -jdk/internal/reflect/ReflectionFactory$GetReflectionFactoryAction -jdk/internal/reflect/ReflectionFactory -java/lang/ref/Reference$ReferenceHandler -jdk/internal/ref/Cleaner -java/lang/ref/ReferenceQueue -java/lang/ref/ReferenceQueue$Null -java/lang/ref/ReferenceQueue$Lock -jdk/internal/access/JavaLangRefAccess -java/lang/ref/Reference$1 -java/lang/ref/Finalizer$FinalizerThread -jdk/internal/access/JavaLangAccess -java/lang/System$2 -jdk/internal/misc/VM -jdk/internal/util/SystemProps -jdk/internal/util/SystemProps$Raw -java/lang/StringConcatHelper -java/lang/VersionProps -java/util/Arrays -java/lang/CharacterData -java/lang/CharacterDataLatin1 -java/util/HashMap$EntrySet -java/util/HashMap$HashIterator -java/util/HashMap$EntryIterator -jdk/internal/util/StaticProperty -java/io/FileInputStream -java/io/FileDescriptor -jdk/internal/access/JavaIOFileDescriptorAccess -java/io/FileDescriptor$1 -java/io/Flushable -java/io/OutputStream -java/io/FileOutputStream -java/io/FilterInputStream -java/io/BufferedInputStream -java/io/FilterOutputStream -java/io/PrintStream -java/io/BufferedOutputStream -java/io/Writer -java/io/OutputStreamWriter -java/nio/charset/Charset -java/nio/charset/spi/CharsetProvider -sun/nio/cs/StandardCharsets -java/lang/ThreadLocal -java/util/concurrent/atomic/AtomicInteger -sun/security/action/GetPropertyAction -sun/nio/cs/HistoricallyNamedCharset -sun/nio/cs/US_ASCII -sun/nio/cs/StreamEncoder -java/nio/charset/CharsetEncoder -sun/nio/cs/US_ASCII$Encoder -java/nio/charset/CodingErrorAction -sun/nio/cs/Surrogate$Parser -sun/nio/cs/Surrogate -java/nio/charset/CoderResult -java/nio/ByteBuffer -jdk/internal/misc/ScopedMemoryAccess -jdk/internal/access/JavaNioAccess -java/nio/Buffer$1 -java/nio/HeapByteBuffer -java/nio/ByteOrder -java/io/BufferedWriter -java/lang/Terminator -jdk/internal/misc/Signal$Handler -java/lang/Terminator$1 -jdk/internal/misc/Signal -java/util/Hashtable$Entry -jdk/internal/misc/Signal$NativeHandler -jdk/internal/misc/OSEnvironment -java/util/Collections -java/util/Collections$EmptySet -java/util/Collections$EmptyList -java/util/Collections$EmptyMap -java/lang/IllegalArgumentException -java/lang/invoke/MethodHandleStatics -jdk/internal/module/ModuleBootstrap -sun/invoke/util/VerifyAccess -java/lang/reflect/Modifier -jdk/internal/access/JavaLangModuleAccess -java/lang/module/ModuleDescriptor$1 -java/io/File -java/io/DefaultFileSystem -java/io/FileSystem -java/io/UnixFileSystem -jdk/internal/util/ArraysSupport -jdk/internal/module/ModulePatcher -jdk/internal/module/ModuleBootstrap$Counters -jdk/internal/module/ArchivedBootLayer -java/nio/file/Watchable -java/nio/file/Path -java/nio/file/FileSystems -sun/nio/fs/DefaultFileSystemProvider -java/nio/file/spi/FileSystemProvider -sun/nio/fs/AbstractFileSystemProvider -sun/nio/fs/UnixFileSystemProvider -sun/nio/fs/BsdFileSystemProvider -sun/nio/fs/MacOSXFileSystemProvider -java/nio/file/OpenOption -java/nio/file/StandardOpenOption -java/nio/file/FileSystem -sun/nio/fs/UnixFileSystem -sun/nio/fs/BsdFileSystem -sun/nio/fs/MacOSXFileSystem -sun/nio/fs/UnixPath -sun/nio/fs/Util -sun/nio/cs/Unicode -sun/nio/cs/UTF_8 -java/lang/StringCoding -sun/nio/fs/UnixNativeDispatcher -jdk/internal/loader/BootLoader -jdk/internal/loader/NativeLibraries -jdk/internal/loader/ClassLoaderHelper -java/util/HashSet -java/util/Queue -java/util/Deque -java/util/ArrayDeque -jdk/internal/loader/NativeLibraries$LibraryPaths -jdk/internal/loader/NativeLibraries$1 -java/io/File$PathStatus -java/util/ArrayDeque$DeqIterator -jdk/internal/loader/NativeLibrary -jdk/internal/loader/NativeLibraries$NativeLibraryImpl -java/security/cert/Certificate -java/util/concurrent/ConcurrentHashMap$CollectionView -java/util/concurrent/ConcurrentHashMap$ValuesView -java/util/concurrent/ConcurrentHashMap$Traverser -java/util/concurrent/ConcurrentHashMap$BaseIterator -java/util/Enumeration -java/util/concurrent/ConcurrentHashMap$ValueIterator -java/nio/file/attribute/BasicFileAttributes -java/nio/file/attribute/PosixFileAttributes -sun/nio/fs/UnixFileAttributes -sun/nio/fs/UnixFileStoreAttributes -sun/nio/fs/UnixMountEntry -jdk/internal/module/ModulePath -jdk/internal/perf/PerfCounter -jdk/internal/perf/Perf$GetPerfAction -jdk/internal/perf/Perf -sun/nio/ch/DirectBuffer -java/nio/MappedByteBuffer -java/nio/DirectByteBuffer -java/nio/Bits -java/util/concurrent/atomic/AtomicLong -jdk/internal/misc/VM$BufferPool -java/nio/Bits$1 -java/nio/LongBuffer -java/nio/DirectLongBufferU -java/util/zip/ZipConstants -java/util/zip/ZipFile -java/util/jar/JarFile -jdk/internal/access/JavaUtilZipFileAccess -java/util/zip/ZipFile$1 -jdk/internal/access/JavaUtilJarAccess -java/util/jar/JavaUtilJarAccessImpl -java/lang/Runtime$Version -java/util/Optional -jdk/internal/access/JavaNetUriAccess -java/net/URI$1 -jdk/internal/loader/ArchivedClassLoaders -jdk/internal/loader/ClassLoaders$BootClassLoader -java/lang/ClassLoader$ParallelLoaders -java/util/WeakHashMap -java/util/WeakHashMap$Entry -java/util/Collections$SetFromMap -java/util/WeakHashMap$KeySet -jdk/internal/access/JavaSecurityAccess -java/security/ProtectionDomain$JavaSecurityAccessImpl -java/security/ProtectionDomain$Key -java/security/Principal -jdk/internal/loader/URLClassPath -java/net/URLStreamHandlerFactory -java/net/URL$DefaultFactory -jdk/internal/access/JavaNetURLAccess -java/net/URL$3 -sun/net/www/ParseUtil -java/util/HexFormat -java/net/URLStreamHandler -sun/net/www/protocol/file/Handler -sun/net/util/IPAddressUtil -jdk/internal/util/Preconditions -jdk/internal/module/ServicesCatalog -jdk/internal/loader/AbstractClassLoaderValue -jdk/internal/loader/ClassLoaderValue -jdk/internal/module/SystemModuleFinders -jdk/internal/module/SystemModulesMap -jdk/internal/module/SystemModules -jdk/internal/module/SystemModules$all -jdk/internal/module/Builder -java/lang/module/ModuleDescriptor$Opens -java/lang/module/ModuleDescriptor$Modifier -jdk/internal/module/ModuleHashes -jdk/internal/module/ModuleResolution -jdk/internal/loader/BuiltinClassLoader$LoadedModule -java/util/ImmutableCollections$SetN$SetNIterator -java/lang/module/ModuleFinder$2 -jdk/internal/module/DefaultRoots -java/util/Spliterators -java/util/Spliterators$EmptySpliterator -java/util/Spliterator -java/util/Spliterators$EmptySpliterator$OfRef -java/util/Spliterator$OfPrimitive -java/util/Spliterator$OfInt -java/util/Spliterators$EmptySpliterator$OfInt -java/util/Spliterator$OfLong -java/util/Spliterators$EmptySpliterator$OfLong -java/util/Spliterator$OfDouble -java/util/Spliterators$EmptySpliterator$OfDouble -java/util/Spliterators$IteratorSpliterator -java/util/stream/StreamSupport -java/util/stream/PipelineHelper -java/util/stream/BaseStream -java/util/stream/AbstractPipeline -java/util/stream/Stream -java/util/stream/ReferencePipeline -java/util/stream/ReferencePipeline$Head -java/util/stream/StreamOpFlag -java/util/stream/StreamOpFlag$Type -java/util/stream/StreamOpFlag$MaskBuilder -java/util/EnumMap -java/util/EnumMap$1 -java/lang/Class$ReflectionData -java/lang/Class$Atomic -java/lang/PublicMethods$MethodList -java/lang/PublicMethods$Key -java/lang/Class$3 -sun/reflect/annotation/AnnotationParser -jdk/internal/reflect/NativeMethodAccessorImpl -jdk/internal/reflect/DelegatingMethodAccessorImpl -java/lang/invoke/LambdaMetafactory -java/lang/invoke/MethodType$ConcurrentWeakInternSet -java/lang/Void -java/lang/invoke/MethodTypeForm -java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry -sun/invoke/util/Wrapper -sun/invoke/util/Wrapper$Format -java/lang/invoke/LambdaForm$NamedFunction -java/lang/invoke/DirectMethodHandle$Holder -sun/invoke/util/ValueConversions -java/lang/invoke/MethodHandleImpl -java/lang/invoke/Invokers -java/lang/invoke/LambdaForm$Kind -java/lang/NoSuchMethodException -java/lang/invoke/LambdaForm$BasicType -java/lang/reflect/Array -java/lang/invoke/LambdaForm$Name -java/lang/invoke/LambdaForm$Holder -java/lang/invoke/InvokerBytecodeGenerator -java/lang/invoke/InvokerBytecodeGenerator$2 -java/lang/invoke/MethodHandleImpl$Intrinsic -java/lang/StringUTF16 -java/lang/Readable -java/nio/CharBuffer -java/nio/HeapCharBuffer -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L7_L -java/lang/Module$ReflectionData -java/lang/WeakPairMap -java/lang/WeakPairMap$Pair -java/lang/WeakPairMap$Pair$Lookup -java/util/function/Predicate -java/lang/IncompatibleClassChangeError -java/lang/NoSuchMethodError -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic LL_I -jdk/internal/org/objectweb/asm/ClassVisitor -jdk/internal/org/objectweb/asm/ClassWriter -jdk/internal/org/objectweb/asm/SymbolTable -jdk/internal/org/objectweb/asm/Symbol -jdk/internal/org/objectweb/asm/SymbolTable$Entry -jdk/internal/org/objectweb/asm/ByteVector -sun/invoke/util/BytecodeDescriptor -jdk/internal/org/objectweb/asm/MethodVisitor -jdk/internal/org/objectweb/asm/MethodWriter -jdk/internal/org/objectweb/asm/Type -jdk/internal/org/objectweb/asm/Label -jdk/internal/org/objectweb/asm/Frame -jdk/internal/org/objectweb/asm/AnnotationVisitor -jdk/internal/org/objectweb/asm/AnnotationWriter -java/lang/invoke/InvokerBytecodeGenerator$ClassData -sun/invoke/util/VerifyType -sun/invoke/empty/Empty -java/util/ArrayList$Itr -jdk/internal/org/objectweb/asm/FieldVisitor -jdk/internal/org/objectweb/asm/FieldWriter -jdk/internal/org/objectweb/asm/Attribute -jdk/internal/org/objectweb/asm/Handler -java/lang/invoke/MethodHandles$Lookup$ClassFile -java/lang/invoke/MethodHandles$Lookup$ClassOption -java/lang/invoke/MethodHandles$Lookup$ClassDefiner -java/lang/invoke/BootstrapMethodInvoker -java/lang/invoke/VarHandle$AccessMode -java/lang/invoke/VarHandle$AccessType -java/lang/invoke/Invokers$Holder -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial L8_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.Invokers$Holder invokeExact_MT L8_L -jdk/internal/access/JavaLangInvokeAccess -java/lang/invoke/MethodHandleImpl$1 -java/lang/invoke/AbstractValidatingLambdaMetafactory -java/lang/invoke/InnerClassLambdaMetafactory -sun/security/action/GetBooleanAction -jdk/internal/org/objectweb/asm/Handle -jdk/internal/org/objectweb/asm/ConstantDynamic -java/lang/invoke/MethodHandleInfo -java/lang/invoke/InfoFromMemberName -java/lang/invoke/LambdaProxyClassArchive -java/lang/invoke/TypeConvertingMethodAdapter -java/lang/invoke/InnerClassLambdaMetafactory$ForwardingMethodGenerator -jdk/internal/org/objectweb/asm/ClassReader -java/util/ImmutableCollections$Set12$1 -java/lang/invoke/InnerClassLambdaMetafactory$1 -jdk/internal/reflect/DelegatingConstructorAccessorImpl -java/lang/invoke/BoundMethodHandle -java/lang/invoke/ClassSpecializer -java/lang/invoke/BoundMethodHandle$Specializer -java/lang/invoke/ClassSpecializer$1 -java/lang/invoke/ClassSpecializer$SpeciesData -java/lang/invoke/BoundMethodHandle$SpeciesData -java/lang/invoke/ClassSpecializer$Factory -java/lang/invoke/BoundMethodHandle$Specializer$Factory -java/lang/invoke/SimpleMethodHandle -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.SimpleMethodHandle -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L3_L -java/lang/NoSuchFieldException -java/lang/invoke/BoundMethodHandle$Species_L -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L4_L -java/lang/invoke/DirectMethodHandle$2 -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder getReference LL_L -java/lang/invoke/DirectMethodHandle$Accessor -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.LambdaForm$Holder identity_L LL_L -java/lang/invoke/DelegatingMethodHandle -java/lang/invoke/MethodHandleImpl$IntrinsicMethodHandle -java/lang/invoke/DelegatingMethodHandle$Holder -sun/invoke/util/Wrapper$1 -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.LambdaForm$Holder zero_L L_L -java/lang/invoke/LambdaFormEditor -java/lang/invoke/LambdaFormEditor$TransformKey -java/lang/invoke/LambdaFormBuffer -java/lang/invoke/LambdaFormEditor$Transform -jdk/internal/ref/CleanerFactory -java/util/concurrent/ThreadFactory -jdk/internal/ref/CleanerFactory$1 -java/lang/ref/Cleaner -java/lang/ref/Cleaner$1 -jdk/internal/ref/CleanerImpl -java/lang/ref/Cleaner$Cleanable -jdk/internal/ref/PhantomCleanable -jdk/internal/ref/CleanerImpl$PhantomCleanableRef -jdk/internal/ref/CleanerImpl$CleanerCleanable -jdk/internal/misc/InnocuousThread -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LL_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.Invokers$Holder linkToTargetMethod L_L -@lambda-proxy jdk/internal/module/DefaultRoots test ()Ljava/util/function/Predicate; (Ljava/lang/Object;)Z REF_invokeStatic jdk/internal/module/DefaultRoots lambda$compute$0 (Ljava/lang/module/ModuleReference;)Z (Ljava/lang/module/ModuleReference;)Z -java/util/stream/ReferencePipeline$StatelessOp -java/util/stream/ReferencePipeline$2 -java/util/stream/StreamShape -@lambda-proxy jdk/internal/module/DefaultRoots apply ()Ljava/util/function/Function; (Ljava/lang/Object;)Ljava/lang/Object; REF_invokeVirtual java/lang/module/ModuleReference descriptor ()Ljava/lang/module/ModuleDescriptor; (Ljava/lang/module/ModuleReference;)Ljava/lang/module/ModuleDescriptor; -java/util/stream/ReferencePipeline$3 -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L3_I -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder newInvokeSpecial LL_L -java/lang/invoke/DirectMethodHandle$Constructor -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial L3_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.Invokers$Holder linkToTargetMethod LL_L -@lambda-proxy jdk/internal/module/DefaultRoots test (Ljava/lang/module/ModuleFinder;)Ljava/util/function/Predicate; (Ljava/lang/Object;)Z REF_invokeStatic jdk/internal/module/DefaultRoots lambda$compute$1 (Ljava/lang/module/ModuleFinder;Ljava/lang/module/ModuleDescriptor;)Z (Ljava/lang/module/ModuleDescriptor;)Z -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeVirtual LL_L -@lambda-proxy jdk/internal/module/DefaultRoots apply ()Ljava/util/function/Function; (Ljava/lang/Object;)Ljava/lang/Object; REF_invokeVirtual java/lang/module/ModuleDescriptor name ()Ljava/lang/String; (Ljava/lang/module/ModuleDescriptor;)Ljava/lang/String; -java/util/stream/Collectors -java/util/stream/Collector$Characteristics -java/util/EnumSet -java/util/RegularEnumSet -java/util/Collections$UnmodifiableCollection -java/util/Collections$UnmodifiableSet -java/util/stream/Collector -java/util/stream/Collectors$CollectorImpl -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder newInvokeSpecial L_L -@lambda-proxy java/util/stream/Collectors get ()Ljava/util/function/Supplier; ()Ljava/lang/Object; REF_newInvokeSpecial java/util/HashSet ()V ()Ljava/util/HashSet; -java/util/function/BiConsumer -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeInterface L3_I -java/lang/invoke/DirectMethodHandle$Interface -@lambda-proxy java/util/stream/Collectors accept ()Ljava/util/function/BiConsumer; (Ljava/lang/Object;Ljava/lang/Object;)V REF_invokeInterface java/util/Set add (Ljava/lang/Object;)Z (Ljava/util/HashSet;Ljava/lang/Object;)V -java/util/function/BiFunction -java/util/function/BinaryOperator -@lambda-proxy java/util/stream/Collectors apply ()Ljava/util/function/BinaryOperator; (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; REF_invokeStatic java/util/stream/Collectors lambda$toSet$7 (Ljava/util/HashSet;Ljava/util/HashSet;)Ljava/util/HashSet; (Ljava/util/HashSet;Ljava/util/HashSet;)Ljava/util/HashSet; -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic LL_L -@lambda-proxy java/util/stream/Collectors apply ()Ljava/util/function/Function; (Ljava/lang/Object;)Ljava/lang/Object; REF_invokeStatic java/util/stream/Collectors lambda$castingIdentity$2 (Ljava/lang/Object;)Ljava/lang/Object; (Ljava/lang/Object;)Ljava/lang/Object; -java/util/stream/ReduceOps -java/util/stream/TerminalOp -java/util/stream/ReduceOps$ReduceOp -java/util/stream/ReduceOps$3 -java/util/stream/ReduceOps$Box -java/util/function/Consumer -java/util/stream/Sink -java/util/stream/TerminalSink -java/util/stream/ReduceOps$AccumulatingSink -java/util/stream/ReduceOps$3ReducingSink -java/util/stream/Sink$ChainedReference -java/util/stream/ReferencePipeline$3$1 -java/util/stream/ReferencePipeline$2$1 -java/util/AbstractList$RandomAccessSpliterator -@lambda-proxy java/lang/module/ModuleFinder$2 apply (Ljava/lang/String;)Ljava/util/function/Function; (Ljava/lang/Object;)Ljava/lang/Object; REF_invokeStatic java/lang/module/ModuleFinder$2 lambda$find$0 (Ljava/lang/String;Ljava/lang/module/ModuleFinder;)Ljava/util/Optional; (Ljava/lang/module/ModuleFinder;)Ljava/util/Optional; -@lambda-proxy java/lang/module/ModuleFinder$2 apply ()Ljava/util/function/Function; (Ljava/lang/Object;)Ljava/lang/Object; REF_invokeVirtual java/util/Optional stream ()Ljava/util/stream/Stream; (Ljava/util/Optional;)Ljava/util/stream/Stream; -java/util/stream/ReferencePipeline$7 -java/util/stream/FindOps -java/util/stream/FindOps$FindSink -java/util/stream/FindOps$FindSink$OfRef -java/util/stream/FindOps$FindOp -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LL_I -@lambda-proxy java/util/stream/FindOps$FindSink$OfRef test ()Ljava/util/function/Predicate; (Ljava/lang/Object;)Z REF_invokeVirtual java/util/Optional isPresent ()Z (Ljava/util/Optional;)Z -@lambda-proxy java/util/stream/FindOps$FindSink$OfRef get ()Ljava/util/function/Supplier; ()Ljava/lang/Object; REF_newInvokeSpecial java/util/stream/FindOps$FindSink$OfRef ()V ()Ljava/util/stream/TerminalSink; -@lambda-proxy java/util/stream/FindOps$FindSink$OfRef test ()Ljava/util/function/Predicate; (Ljava/lang/Object;)Z REF_invokeVirtual java/util/Optional isPresent ()Z (Ljava/util/Optional;)Z -@lambda-proxy java/util/stream/FindOps$FindSink$OfRef get ()Ljava/util/function/Supplier; ()Ljava/lang/Object; REF_newInvokeSpecial java/util/stream/FindOps$FindSink$OfRef ()V ()Ljava/util/stream/TerminalSink; -java/util/stream/ReferencePipeline$7$1 -java/util/stream/Streams$AbstractStreamBuilderImpl -java/util/stream/Stream$Builder -java/util/stream/Streams$StreamBuilderImpl -java/util/stream/Streams -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial L4_V -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder newInvokeSpecial L3_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial L4_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.Invokers$Holder linkToTargetMethod L3_L -@lambda-proxy java/lang/module/ModuleFinder$2 accept (Ljava/lang/module/ModuleFinder$2;Ljava/lang/String;)Ljava/util/function/Consumer; (Ljava/lang/Object;)V REF_invokeVirtual java/lang/module/ModuleFinder$2 lambda$find$1 (Ljava/lang/String;Ljava/lang/module/ModuleReference;)V (Ljava/lang/module/ModuleReference;)V -@lambda-proxy jdk/internal/module/DefaultRoots test ()Ljava/util/function/Predicate; (Ljava/lang/Object;)Z REF_invokeStatic jdk/internal/module/DefaultRoots lambda$exportsAPI$2 (Ljava/lang/module/ModuleDescriptor$Exports;)Z (Ljava/lang/module/ModuleDescriptor$Exports;)Z -java/util/HashMap$KeySet -java/util/HashMap$KeyIterator -java/lang/module/Resolver -java/lang/module/ModuleFinder$1 -java/util/ListIterator -java/util/ImmutableCollections$ListItr -java/util/HashMap$Values -java/util/HashMap$ValueIterator -@lambda-proxy java/lang/module/ModuleFinder$2 apply ()Ljava/util/function/Function; (Ljava/lang/Object;)Ljava/lang/Object; REF_invokeStatic java/lang/module/ModuleFinder$2 lambda$findAll$2 (Ljava/lang/module/ModuleFinder;)Ljava/util/stream/Stream; (Ljava/lang/module/ModuleFinder;)Ljava/util/stream/Stream; -@lambda-proxy java/lang/module/ModuleFinder$2 accept (Ljava/lang/module/ModuleFinder$2;Ljava/util/Set;)Ljava/util/function/Consumer; (Ljava/lang/Object;)V REF_invokeVirtual java/lang/module/ModuleFinder$2 lambda$findAll$3 (Ljava/util/Set;Ljava/lang/module/ModuleReference;)V (Ljava/lang/module/ModuleReference;)V -java/util/stream/ForEachOps -java/util/stream/ForEachOps$ForEachOp -java/util/stream/ForEachOps$ForEachOp$OfRef -java/nio/file/CopyOption -java/nio/file/LinkOption -java/nio/file/Files -java/nio/file/attribute/AttributeView -java/nio/file/attribute/FileAttributeView -java/nio/file/attribute/BasicFileAttributeView -java/nio/file/attribute/UserDefinedFileAttributeView -sun/nio/fs/UnixFileAttributeViews -sun/nio/fs/DynamicFileAttributeView -sun/nio/fs/AbstractBasicFileAttributeView -sun/nio/fs/UnixFileAttributeViews$Basic -sun/nio/fs/NativeBuffers -jdk/internal/misc/TerminatingThreadLocal -sun/nio/fs/NativeBuffers$1 -jdk/internal/misc/TerminatingThreadLocal$1 -java/lang/ThreadLocal$ThreadLocalMap -java/lang/ThreadLocal$ThreadLocalMap$Entry -java/util/IdentityHashMap -java/util/IdentityHashMap$KeySet -sun/nio/fs/NativeBuffer -sun/nio/fs/NativeBuffer$Deallocator -sun/nio/fs/UnixFileAttributes$UnixAsBasicFileAttributes -java/util/zip/ZipFile$CleanableResource -java/util/zip/ZipCoder -java/util/zip/ZipCoder$UTF8ZipCoder -java/util/zip/ZipFile$Source -java/util/zip/ZipFile$Source$Key -java/io/DataOutput -java/io/DataInput -java/io/RandomAccessFile -jdk/internal/access/JavaIORandomAccessFileAccess -java/io/RandomAccessFile$2 -java/io/FileCleanable -java/util/zip/ZipFile$Source$End -java/util/zip/ZipUtils -java/util/concurrent/TimeUnit -java/nio/file/attribute/FileTime -jdk/internal/perf/PerfCounter$CoreCounters -java/util/zip/ZipEntry -java/util/jar/JarEntry -java/util/jar/JarFile$JarFileEntry -java/util/zip/ZipFile$ZipFileInputStream -java/util/zip/InflaterInputStream -java/util/zip/ZipFile$ZipFileInflaterInputStream -java/util/zip/Inflater -java/util/zip/Inflater$InflaterZStreamRef -java/util/zip/ZipFile$InflaterCleanupAction -java/util/jar/JarVerifier -sun/security/util/Debug -java/security/CodeSigner -java/io/ByteArrayOutputStream -java/util/jar/Attributes -java/util/LinkedHashMap -java/util/jar/Manifest$FastInputStream -jdk/internal/module/ModulePath$Patterns -java/util/regex/Pattern -java/util/regex/Pattern$Node -java/util/regex/Pattern$LastNode -java/util/regex/Pattern$GroupHead -java/util/regex/Pattern$CharPredicate -java/util/regex/Pattern$BmpCharPredicate -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic LII_I -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder newInvokeSpecial LI_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLI_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.Invokers$Holder linkToTargetMethod IL_L -@lambda-proxy java/util/regex/Pattern is (I)Ljava/util/regex/Pattern$BmpCharPredicate; (I)Z REF_invokeStatic java/util/regex/Pattern lambda$Single$7 (II)Z (I)Z -java/util/regex/Pattern$CharProperty -java/util/regex/Pattern$BmpCharProperty -java/util/regex/Pattern$GroupTail -java/util/regex/CharPredicates -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic LI_I -@lambda-proxy java/util/regex/CharPredicates is ()Ljava/util/regex/Pattern$BmpCharPredicate; (I)Z REF_invokeStatic java/util/regex/CharPredicates lambda$ASCII_DIGIT$18 (I)Z (I)Z -java/util/regex/Pattern$Qtype -java/util/regex/Pattern$CharPropertyGreedy -java/util/regex/Pattern$BmpCharPropertyGreedy -java/util/regex/Pattern$Dollar -java/util/regex/Pattern$BranchConn -java/util/regex/Pattern$Branch -java/util/regex/Pattern$SliceNode -java/util/regex/Pattern$Slice -java/util/regex/Pattern$Begin -java/util/regex/Pattern$First -java/util/regex/Pattern$Start -java/util/regex/Pattern$TreeInfo -java/util/regex/Pattern$BitClass -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic LI3_I -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder newInvokeSpecial LII_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLII_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.Invokers$Holder linkToTargetMethod IIL_L -@lambda-proxy java/util/regex/Pattern is (II)Ljava/util/regex/Pattern$BmpCharPredicate; (I)Z REF_invokeStatic java/util/regex/Pattern lambda$Range$10 (III)Z (I)Z -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecialIFC L3I_I -@lambda-proxy java/util/regex/Pattern$BmpCharPredicate is (Ljava/util/regex/Pattern$BmpCharPredicate;Ljava/util/regex/Pattern$CharPredicate;)Ljava/util/regex/Pattern$BmpCharPredicate; (I)Z REF_invokeInterface java/util/regex/Pattern$BmpCharPredicate lambda$union$2 (Ljava/util/regex/Pattern$CharPredicate;I)Z (I)Z -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecialIFC LLI_I -@lambda-proxy java/util/regex/Pattern$CharPredicate is (Ljava/util/regex/Pattern$CharPredicate;)Ljava/util/regex/Pattern$CharPredicate; (I)Z REF_invokeInterface java/util/regex/Pattern$CharPredicate lambda$negate$3 (I)Z (I)Z -java/util/regex/Pattern$StartS -java/util/regex/Pattern$BackRef -java/util/regex/Pattern$Curly -java/util/regex/Pattern$Ques -java/util/regex/Pattern$GroupCurly -java/util/regex/MatchResult -java/util/regex/Matcher -java/util/regex/IntHashSet -java/lang/module/ModuleDescriptor$Builder -jdk/internal/module/Checks -java/util/Spliterators$AbstractSpliterator -java/util/zip/ZipFile$EntrySpliterator -java/util/function/IntFunction -@lambda-proxy java/util/zip/ZipFile apply (Ljava/util/zip/ZipFile;)Ljava/util/function/IntFunction; (I)Ljava/lang/Object; REF_invokeVirtual java/util/zip/ZipFile lambda$jarStream$1 (I)Ljava/util/jar/JarEntry; (I)Ljava/util/jar/JarEntry; -@lambda-proxy jdk/internal/module/ModulePath test ()Ljava/util/function/Predicate; (Ljava/lang/Object;)Z REF_invokeStatic jdk/internal/module/ModulePath lambda$deriveModuleDescriptor$2 (Ljava/util/jar/JarEntry;)Z (Ljava/util/jar/JarEntry;)Z -@lambda-proxy jdk/internal/module/ModulePath apply ()Ljava/util/function/Function; (Ljava/lang/Object;)Ljava/lang/Object; REF_invokeVirtual java/util/zip/ZipEntry getName ()Ljava/lang/String; (Ljava/util/jar/JarEntry;)Ljava/lang/String; -@lambda-proxy jdk/internal/module/ModulePath test ()Ljava/util/function/Predicate; (Ljava/lang/Object;)Z REF_invokeStatic jdk/internal/module/ModulePath lambda$deriveModuleDescriptor$3 (Ljava/lang/String;)Z (Ljava/lang/String;)Z -@lambda-proxy jdk/internal/module/ModulePath test ()Ljava/util/function/Predicate; (Ljava/lang/Object;)Z REF_invokeStatic jdk/internal/module/ModulePath lambda$deriveModuleDescriptor$4 (Ljava/lang/String;)Z (Ljava/lang/String;)Z -java/util/stream/Collectors$Partition -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L5_V -@lambda-proxy java/util/stream/Collectors accept (Ljava/util/function/BiConsumer;Ljava/util/function/Predicate;)Ljava/util/function/BiConsumer; (Ljava/lang/Object;Ljava/lang/Object;)V REF_invokeStatic java/util/stream/Collectors lambda$partitioningBy$62 (Ljava/util/function/BiConsumer;Ljava/util/function/Predicate;Ljava/util/stream/Collectors$Partition;Ljava/lang/Object;)V (Ljava/util/stream/Collectors$Partition;Ljava/lang/Object;)V -@lambda-proxy java/util/stream/Collectors apply (Ljava/util/function/BinaryOperator;)Ljava/util/function/BinaryOperator; (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; REF_invokeStatic java/util/stream/Collectors lambda$partitioningBy$63 (Ljava/util/function/BinaryOperator;Ljava/util/stream/Collectors$Partition;Ljava/util/stream/Collectors$Partition;)Ljava/util/stream/Collectors$Partition; (Ljava/util/stream/Collectors$Partition;Ljava/util/stream/Collectors$Partition;)Ljava/util/stream/Collectors$Partition; -@lambda-proxy java/util/stream/Collectors get (Ljava/util/stream/Collector;)Ljava/util/function/Supplier; ()Ljava/lang/Object; REF_invokeStatic java/util/stream/Collectors lambda$partitioningBy$64 (Ljava/util/stream/Collector;)Ljava/util/stream/Collectors$Partition; ()Ljava/util/stream/Collectors$Partition; -java/util/stream/Collectors$Partition$1 -java/util/AbstractMap$SimpleImmutableEntry -java/util/HashMap$HashMapSpliterator -java/util/HashMap$KeySpliterator -@lambda-proxy jdk/internal/module/ModulePath apply (Ljdk/internal/module/ModulePath;)Ljava/util/function/Function; (Ljava/lang/Object;)Ljava/lang/Object; REF_invokeVirtual jdk/internal/module/ModulePath toPackageName (Ljava/lang/String;)Ljava/util/Optional; (Ljava/lang/String;)Ljava/util/Optional; -@lambda-proxy jdk/internal/module/ModulePath apply ()Ljava/util/function/Function; (Ljava/lang/Object;)Ljava/lang/Object; REF_invokeVirtual java/util/Optional stream ()Ljava/util/stream/Stream; (Ljava/util/Optional;)Ljava/util/stream/Stream; -java/util/stream/DistinctOps -java/util/stream/ReferencePipeline$StatefulOp -java/util/stream/DistinctOps$1 -java/util/stream/DistinctOps$1$2 -@lambda-proxy java/lang/module/ModuleDescriptor$Builder accept ()Ljava/util/function/Consumer; (Ljava/lang/Object;)V REF_invokeStatic jdk/internal/module/Checks requirePackageName (Ljava/lang/String;)Ljava/lang/String; (Ljava/lang/String;)V -@lambda-proxy jdk/internal/module/ModulePath apply (Ljdk/internal/module/ModulePath;)Ljava/util/function/Function; (Ljava/lang/Object;)Ljava/lang/Object; REF_invokeVirtual jdk/internal/module/ModulePath toServiceName (Ljava/lang/String;)Ljava/util/Optional; (Ljava/lang/String;)Ljava/util/Optional; -@lambda-proxy jdk/internal/module/ModulePath apply ()Ljava/util/function/Function; (Ljava/lang/Object;)Ljava/lang/Object; REF_invokeVirtual java/util/Optional stream ()Ljava/util/stream/Stream; (Ljava/util/Optional;)Ljava/util/stream/Stream; -jdk/internal/module/ModuleInfo$Attributes -jdk/internal/module/ModuleReferences -sun/nio/fs/UnixUriUtils -java/net/URI$Parser -java/lang/module/ModuleReader -@lambda-proxy jdk/internal/module/ModuleReferences get (Ljava/nio/file/Path;Ljava/net/URI;)Ljava/util/function/Supplier; ()Ljava/lang/Object; REF_invokeStatic jdk/internal/module/ModuleReferences lambda$newJarModule$0 (Ljava/nio/file/Path;Ljava/net/URI;)Ljava/lang/module/ModuleReader; ()Ljava/lang/module/ModuleReader; -jdk/internal/module/ModuleHashes$HashSupplier -@lambda-proxy jdk/internal/module/ModuleReferences generate (Ljava/util/function/Supplier;)Ljdk/internal/module/ModuleHashes$HashSupplier; (Ljava/lang/String;)[B REF_invokeStatic jdk/internal/module/ModuleReferences lambda$newJarModule$1 (Ljava/util/function/Supplier;Ljava/lang/String;)[B (Ljava/lang/String;)[B -java/io/RandomAccessFile$1 -java/util/ImmutableCollections$Map1 -java/util/HashMap$ValueSpliterator -java/util/Collections$UnmodifiableCollection$1 -java/util/LinkedHashSet -jdk/internal/module/ModuleLoaderMap -jdk/internal/module/ModuleLoaderMap$Modules -jdk/internal/loader/AbstractClassLoaderValue$Memoizer -jdk/internal/module/ServicesCatalog$ServiceProvider -java/util/concurrent/CopyOnWriteArrayList -java/lang/ModuleLayer$Controller -jdk/internal/module/ModuleBootstrap$SafeModuleFinder -java/lang/invoke/StringConcatFactory -java/lang/invoke/StringConcatFactory$1 -java/lang/invoke/StringConcatFactory$2 -java/lang/invoke/StringConcatFactory$3 -sun/launcher/LauncherHelper -sun/net/util/URLUtil -java/util/Locale -sun/util/locale/LocaleUtils -java/security/PrivilegedExceptionAction -jdk/internal/loader/URLClassPath$3 -jdk/internal/loader/URLClassPath$Loader -jdk/internal/loader/URLClassPath$JarLoader -sun/net/www/protocol/jar/Handler -jdk/internal/loader/URLClassPath$JarLoader$1 -jdk/internal/loader/FileURLMapper -java/nio/file/FileSystems$DefaultFileSystemHolder -java/nio/file/FileSystems$DefaultFileSystemHolder$1 -jdk/internal/util/jar/JarIndex -jdk/internal/loader/Resource -jdk/internal/loader/URLClassPath$JarLoader$2 -java/lang/NamedPackage -java/lang/Package -java/lang/Package$VersionInfo -sun/nio/ByteBuffered -java/util/zip/Checksum -java/util/zip/CRC32 -java/util/zip/Checksum$1 -java/security/SecureClassLoader$CodeSourceKey -java/security/SecureClassLoader$1 -java/security/PermissionCollection -sun/security/util/LazyCodeSourcePermissionCollection -java/security/Permissions -java/lang/RuntimePermission -java/security/BasicPermissionCollection -java/security/AllPermission -java/security/UnresolvedPermission -java/security/SecureClassLoader$DebugHolder -java/time/temporal/TemporalAccessor -java/util/logging/Logger -java/util/logging/Handler -java/util/logging/Level -java/util/logging/Level$KnownLevel -@lambda-proxy java/util/logging/Level$KnownLevel apply ()Ljava/util/function/Function; (Ljava/lang/Object;)Ljava/lang/Object; REF_invokeStatic java/util/logging/Level$KnownLevel lambda$add$3 (Ljava/lang/String;)Ljava/util/List; (Ljava/lang/String;)Ljava/util/List; -@lambda-proxy java/util/logging/Level$KnownLevel apply ()Ljava/util/function/Function; (Ljava/lang/Object;)Ljava/lang/Object; REF_invokeStatic java/util/logging/Level$KnownLevel lambda$add$4 (Ljava/lang/Integer;)Ljava/util/List; (Ljava/lang/Integer;)Ljava/util/List; -java/util/logging/Logger$LoggerBundle -java/util/logging/Logger$ConfigurationData -java/util/logging/LogManager -java/util/logging/LogManager$1 -java/util/logging/LogManager$LoggerContext -java/util/logging/LogManager$SystemLoggerContext -java/util/logging/LogManager$LogNode -java/util/concurrent/locks/AbstractQueuedSynchronizer -java/util/concurrent/locks/ReentrantLock$Sync -java/util/concurrent/locks/ReentrantLock$NonfairSync -java/util/Collections$SynchronizedMap -java/util/logging/LogManager$Cleaner -java/lang/ApplicationShutdownHooks -java/lang/ApplicationShutdownHooks$1 -java/lang/Shutdown -java/lang/Shutdown$Lock -java/util/logging/LoggingPermission -sun/util/logging/internal/LoggingProviderImpl$LogManagerAccess -java/util/logging/LogManager$LoggingProviderAccess -sun/security/util/FilePermCompat -sun/security/util/SecurityProperties -java/security/Security -java/security/Security$1 -java/util/Properties$LineReader -java/util/concurrent/ConcurrentHashMap$ForwardingNode -java/io/FileInputStream$1 -java/io/FilePermission -java/lang/System$LoggerFinder -jdk/internal/logger/DefaultLoggerFinder -sun/util/logging/internal/LoggingProviderImpl -java/util/logging/LogManager$2 -java/util/logging/LogManager$RootLogger -java/nio/file/Paths -java/util/logging/LogManager$LoggerWeakRef -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L6_L -java/lang/invoke/MethodHandleImpl$AsVarargsCollector -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial L7_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DelegatingMethodHandle$Holder delegate L6_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.Invokers$Holder invokeExact_MT L7_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DelegatingMethodHandle$Holder reinvoke_L L3_L -java/lang/invoke/BoundMethodHandle$Species_LL -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LL -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L5_L -java/util/logging/LogManager$VisitedLoggers -java/util/logging/LogManager$LoggerContext$1 -java/util/concurrent/ConcurrentHashMap$KeySetView -java/util/Collections$3 -java/util/concurrent/ConcurrentHashMap$KeyIterator -java/util/Properties$EntrySet -java/util/concurrent/ConcurrentHashMap$EntrySetView -java/util/Collections$SynchronizedCollection -java/util/Collections$SynchronizedSet -java/util/concurrent/ConcurrentHashMap$EntryIterator -java/util/concurrent/ConcurrentHashMap$MapEntry -java/util/Hashtable$Enumerator -@lambda-proxy java/util/logging/Level apply ()Ljava/util/function/Function; (Ljava/lang/Object;)Ljava/lang/Object; REF_invokeVirtual java/util/logging/Level$KnownLevel mirrored ()Ljava/util/Optional; (Ljava/util/logging/Level$KnownLevel;)Ljava/util/Optional; -java/util/ArrayList$ArrayListSpliterator -@lambda-proxy java/util/logging/Level$KnownLevel apply ()Ljava/util/function/Function; (Ljava/lang/Object;)Ljava/lang/Object; REF_invokeVirtual java/util/Optional stream ()Ljava/util/stream/Stream; (Ljava/util/Optional;)Ljava/util/stream/Stream; -java/util/IdentityHashMap$Values -java/lang/System$Logger -sun/util/logging/PlatformLogger$Bridge -sun/util/logging/PlatformLogger$ConfigurableBridge -jdk/internal/logger/BootstrapLogger -jdk/internal/logger/BootstrapLogger$DetectBackend -jdk/internal/logger/BootstrapLogger$DetectBackend$1 -java/util/ServiceLoader -java/util/ServiceLoader$ModuleServicesLookupIterator -java/util/Spliterators$1Adapter -java/util/ServiceLoader$LazyClassPathLookupIterator -java/util/ServiceLoader$2 -java/util/ServiceLoader$3 -jdk/internal/module/Resources -jdk/internal/loader/BuiltinClassLoader$2 -jdk/internal/loader/BuiltinClassLoader$5 -jdk/internal/module/SystemModuleFinders$SystemModuleReader -jdk/internal/module/SystemModuleFinders$SystemImage -jdk/internal/jimage/ImageReaderFactory -jdk/internal/jimage/ImageReaderFactory$1 -jdk/internal/jimage/ImageReader -jdk/internal/jimage/BasicImageReader -jdk/internal/jimage/ImageReader$SharedImageReader -jdk/internal/jimage/BasicImageReader$1 -jdk/internal/jimage/NativeImageBuffer -jdk/internal/jimage/NativeImageBuffer$1 -jdk/internal/jimage/ImageHeader -java/nio/IntBuffer -java/nio/DirectIntBufferU -java/nio/DirectByteBufferR -java/nio/DirectIntBufferRU -jdk/internal/jimage/ImageStrings -jdk/internal/jimage/ImageStringsReader -jdk/internal/jimage/decompressor/Decompressor -jdk/internal/jimage/ImageLocation -java/util/Collections$EmptyIterator -java/util/Collections$EmptyEnumeration -jdk/internal/loader/BuiltinClassLoader$1 -java/lang/CompoundEnumeration -jdk/internal/loader/URLClassPath$1 -java/util/concurrent/CopyOnWriteArrayList$COWIterator -java/util/ServiceLoader$1 -java/util/ServiceLoader$Provider -java/util/ServiceLoader$ProviderImpl -jdk/internal/logger/BootstrapLogger$LoggingBackend -jdk/internal/logger/BootstrapLogger$RedirectedLoggers -jdk/internal/logger/BootstrapLogger$BootstrapExecutors -java/util/logging/LogManager$4 -java/util/logging/Logger$SystemLoggerHelper -java/util/logging/Logger$SystemLoggerHelper$1 -jdk/internal/logger/DefaultLoggerFinder$1 -java/net/InetAddress -jdk/internal/access/JavaNetInetAddressAccess -java/net/InetAddress$1 -java/net/InetAddress$InetAddressHolder -java/util/SortedSet -java/util/NavigableSet -java/util/concurrent/ConcurrentSkipListSet -java/util/SortedMap -java/util/NavigableMap -java/util/concurrent/ConcurrentNavigableMap -java/util/concurrent/ConcurrentSkipListMap -java/util/concurrent/ConcurrentSkipListMap$Index -java/lang/invoke/VarHandles -java/lang/ClassValue -java/lang/invoke/VarHandles$1 -java/lang/ClassValue$Entry -java/lang/ClassValue$Identity -java/lang/ClassValue$Version -java/lang/invoke/VarHandleReferences$FieldInstanceReadOnly -java/lang/invoke/VarHandleReferences$FieldInstanceReadWrite -java/lang/invoke/VarHandle$1 -jdk/internal/util/Preconditions$1 -java/lang/invoke/VarHandleGuards -java/lang/invoke/VarForm -java/util/concurrent/atomic/Striped64 -java/util/concurrent/atomic/LongAdder -java/util/concurrent/ConcurrentSkipListMap$Node -java/net/InetAddressImplFactory -java/net/InetAddressImpl -java/net/Inet6AddressImpl -java/lang/Class$1 -java/net/InetAddress$NameService -java/net/InetAddress$PlatformNameService -java/net/Inet4Address -java/net/NetworkInterface -java/net/InterfaceAddress -java/net/Inet6Address -java/net/Inet6Address$Inet6AddressHolder -java/net/DefaultInterface -java/net/NetworkInterface$1 -@lambda-proxy java/net/DefaultInterface run (Ljava/net/NetworkInterface;)Ljava/security/PrivilegedAction; ()Ljava/lang/Object; REF_invokeVirtual java/net/NetworkInterface getInetAddresses ()Ljava/util/Enumeration; ()Ljava/util/Enumeration; -java/util/Arrays$ArrayList -java/util/Spliterators$ArraySpliterator -java/util/StringJoiner -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder newInvokeSpecial L4_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial L5_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.Invokers$Holder linkToTargetMethod L4_L -@lambda-proxy java/util/stream/Collectors get (Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/util/function/Supplier; ()Ljava/lang/Object; REF_invokeStatic java/util/stream/Collectors lambda$joining$11 (Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/util/StringJoiner; ()Ljava/util/StringJoiner; -@lambda-proxy java/util/stream/Collectors accept ()Ljava/util/function/BiConsumer; (Ljava/lang/Object;Ljava/lang/Object;)V REF_invokeVirtual java/util/StringJoiner add (Ljava/lang/CharSequence;)Ljava/util/StringJoiner; (Ljava/util/StringJoiner;Ljava/lang/CharSequence;)V -@lambda-proxy java/util/stream/Collectors apply ()Ljava/util/function/BinaryOperator; (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; REF_invokeVirtual java/util/StringJoiner merge (Ljava/util/StringJoiner;)Ljava/util/StringJoiner; (Ljava/util/StringJoiner;Ljava/util/StringJoiner;)Ljava/util/StringJoiner; -@lambda-proxy java/util/stream/Collectors apply ()Ljava/util/function/Function; (Ljava/lang/Object;)Ljava/lang/Object; REF_invokeVirtual java/util/StringJoiner toString ()Ljava/lang/String; (Ljava/util/StringJoiner;)Ljava/lang/String; -java/util/concurrent/Future -java/util/concurrent/ForkJoinTask -java/util/concurrent/CountedCompleter -java/util/stream/AbstractTask -java/util/stream/ReduceOps$ReduceTask -java/lang/invoke/VarHandleInts$FieldInstanceReadOnly -java/lang/invoke/VarHandleInts$FieldInstanceReadWrite -java/util/concurrent/ForkJoinTask$Aux -java/util/concurrent/Executor -java/util/concurrent/ExecutorService -java/util/concurrent/AbstractExecutorService -java/util/concurrent/ForkJoinPool -java/lang/invoke/VarHandleLongs$FieldInstanceReadOnly -java/lang/invoke/VarHandleLongs$FieldInstanceReadWrite -java/lang/invoke/VarHandleInts$FieldStaticReadOnly -java/lang/invoke/VarHandleInts$FieldStaticReadWrite -java/util/concurrent/ForkJoinPool$ForkJoinWorkerThreadFactory -java/util/concurrent/ForkJoinPool$DefaultForkJoinWorkerThreadFactory -java/util/concurrent/ForkJoinPool$1 -java/util/concurrent/ForkJoinPool$DefaultCommonPoolForkJoinWorkerThreadFactory -java/util/concurrent/ForkJoinPool$WorkQueue -java/util/concurrent/ForkJoinWorkerThread -java/util/random/RandomGenerator -java/util/Random -java/util/concurrent/ThreadLocalRandom -jdk/internal/util/random/RandomSupport -java/lang/invoke/VarHandleReferences$Array -java/lang/invoke/VarHandle$AccessDescriptor -java/util/concurrent/ForkJoinPool$DefaultCommonPoolForkJoinWorkerThreadFactory$1 -java/util/regex/ASCII -@lambda-proxy java/util/regex/CharPredicates is ()Ljava/util/regex/Pattern$BmpCharPredicate; (I)Z REF_invokeStatic java/util/regex/CharPredicates lambda$ASCII_SPACE$20 (I)Z (I)Z -java/util/ArrayList$SubList -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeVirtual L3_V -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic LLJ_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial L3J_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DelegatingMethodHandle$Holder reinvoke_L LLJ_L -java/util/Arrays$ArrayItr -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic LJL3_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLJL3_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DelegatingMethodHandle$Holder reinvoke_L LJL3_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLJLL_J -java/lang/invoke/BoundMethodHandle$Species_LLL -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LLL -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic LJ_L -java/lang/invoke/BoundMethodHandle$Species_LLLL -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LLLL -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLJ_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic LJL_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLJL_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DelegatingMethodHandle$Holder reinvoke_L LJL_J -java/lang/invoke/BoundMethodHandle$Species_LLLLL -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LLLLL -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L8_L -java/lang/invoke/MethodHandles$1 -java/lang/invoke/BoundMethodHandle$Species_LJ -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LJ -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L4J_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder getLong LL_J -java/lang/invoke/BoundMethodHandle$Species_LLLLLL -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LLLLLL -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L9_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial L3_J -java/lang/invoke/BoundMethodHandle$Species_LLLLLLL -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LLLLLLL -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L10_L -java/util/TreeMap -java/lang/invoke/LambdaFormEditor$1 -java/util/TreeMap$Entry -java/util/TreeMap$EntrySet -java/util/TreeMap$PrivateEntryIterator -java/util/TreeMap$EntryIterator -java/lang/invoke/BoundMethodHandle$Species_LLLLLLLL -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LLLLLLLL -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L11_L -java/lang/invoke/BoundMethodHandle$Species_LLLLLLLLL -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LLLLLLLLL -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L12_L -java/lang/invoke/BoundMethodHandle$Species_LLLLLLLLLL -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LLLLLLLLLL -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L13_L -java/lang/invoke/BoundMethodHandle$Species_LLLLLLLLLLL -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LLLLLLLLLLL -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L14_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial L6_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.Invokers$Holder linkToTargetMethod L5_L -java/lang/invoke/BoundMethodHandle$Species_LLLLLLLLLLLL -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LLLLLLLLLLLL -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L15_L -java/lang/invoke/BoundMethodHandle$Species_LLLLLLLLLLLLL -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_LLLLLLLLLLLLL -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L16_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.Invokers$Holder linkToTargetMethod L6_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic LJLIL_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLJLIL_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DelegatingMethodHandle$Holder reinvoke_L LJLIL_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLJLI_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic LJI_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLJI_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DelegatingMethodHandle$Holder reinvoke_L LJI_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLI_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial L3I_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.Invokers$Holder linkToTargetMethod LIL_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLIL_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.Invokers$Holder linkToTargetMethod ILL_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic LJLJL_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLJLJL_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DelegatingMethodHandle$Holder reinvoke_L LJLJL_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLJLJ_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic LJJ_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLJJ_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DelegatingMethodHandle$Holder reinvoke_L LJJ_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLJ_J -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.Invokers$Holder linkToTargetMethod JL_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLJJ_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.Invokers$Holder linkToTargetMethod JJL_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic LD_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LLD_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.Invokers$Holder linkToTargetMethod DL_L -jdk/internal/math/FloatingDecimal -jdk/internal/math/FloatingDecimal$BinaryToASCIIConverter -jdk/internal/math/FloatingDecimal$ExceptionalBinaryToASCIIBuffer -jdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer -jdk/internal/math/FloatingDecimal$1 -jdk/internal/math/FloatingDecimal$ASCIIToBinaryConverter -jdk/internal/math/FloatingDecimal$PreparedASCIIToBinaryBuffer -java/time/format/DateTimeFormatter -java/time/format/DateTimeFormatterBuilder -java/time/temporal/TemporalQuery -java/time/ZoneId -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStaticInit LL_L -@lambda-proxy java/time/format/DateTimeFormatterBuilder queryFrom ()Ljava/time/temporal/TemporalQuery; (Ljava/time/temporal/TemporalAccessor;)Ljava/lang/Object; REF_invokeStatic java/time/format/DateTimeFormatterBuilder lambda$static$0 (Ljava/time/temporal/TemporalAccessor;)Ljava/time/ZoneId; (Ljava/time/temporal/TemporalAccessor;)Ljava/time/ZoneId; -java/time/temporal/TemporalField -java/time/temporal/ChronoField -java/time/temporal/TemporalUnit -java/time/temporal/ChronoUnit -java/time/temporal/TemporalAmount -java/time/Duration -java/math/BigInteger -java/time/temporal/ValueRange -java/time/temporal/IsoFields -java/time/temporal/IsoFields$Field -java/time/temporal/IsoFields$Field$1 -java/time/temporal/IsoFields$Field$2 -java/time/temporal/IsoFields$Field$3 -java/time/temporal/IsoFields$Field$4 -java/time/temporal/IsoFields$Unit -java/time/temporal/JulianFields -java/time/temporal/JulianFields$Field -java/time/format/SignStyle -java/time/format/DateTimeFormatterBuilder$DateTimePrinterParser -java/time/format/DateTimeFormatterBuilder$NumberPrinterParser -java/time/format/DateTimeFormatterBuilder$CharLiteralPrinterParser -java/time/format/ResolverStyle -java/time/chrono/Chronology -java/time/chrono/AbstractChronology -java/time/chrono/IsoChronology -java/util/Locale$Category -java/time/format/DateTimeFormatterBuilder$CompositePrinterParser -java/time/format/DecimalStyle -java/time/format/DateTimeFormatterBuilder$SettingsParser -java/time/format/DateTimeFormatterBuilder$OffsetIdPrinterParser -java/time/format/DateTimeFormatterBuilder$FractionPrinterParser -java/time/format/DateTimeFormatterBuilder$ZoneIdPrinterParser -java/time/format/DateTimeFormatterBuilder$StringLiteralPrinterParser -java/time/format/DateTimeFormatterBuilder$InstantPrinterParser -java/time/format/TextStyle -java/util/Collections$SingletonMap -java/time/format/DateTimeTextProvider$LocaleStore -java/util/Collections$SingletonSet -java/util/Collections$1 -java/util/LinkedHashMap$LinkedEntrySet -java/util/LinkedHashMap$LinkedHashIterator -java/util/LinkedHashMap$LinkedEntryIterator -java/time/format/DateTimeTextProvider -java/time/format/DateTimeTextProvider$1 -java/util/Arrays$LegacyMergeSort -java/util/TimSort -java/time/format/DateTimeFormatterBuilder$1 -java/time/format/DateTimeFormatterBuilder$TextPrinterParser -java/time/chrono/ChronoPeriod -java/time/Period -@lambda-proxy java/time/format/DateTimeFormatter queryFrom ()Ljava/time/temporal/TemporalQuery; (Ljava/time/temporal/TemporalAccessor;)Ljava/lang/Object; REF_invokeStatic java/time/format/DateTimeFormatter lambda$static$0 (Ljava/time/temporal/TemporalAccessor;)Ljava/time/Period; (Ljava/time/temporal/TemporalAccessor;)Ljava/time/Period; -@lambda-proxy java/time/format/DateTimeFormatter queryFrom ()Ljava/time/temporal/TemporalQuery; (Ljava/time/temporal/TemporalAccessor;)Ljava/lang/Object; REF_invokeStatic java/time/format/DateTimeFormatter lambda$static$1 (Ljava/time/temporal/TemporalAccessor;)Ljava/lang/Boolean; (Ljava/time/temporal/TemporalAccessor;)Ljava/lang/Boolean; -java/time/temporal/TemporalAdjuster -java/time/ZoneOffset -java/time/ZoneRegion -java/time/zone/ZoneRules -java/time/zone/ZoneOffsetTransitionRule -java/time/temporal/Temporal -java/time/chrono/ChronoLocalDateTime -java/time/LocalDateTime -java/time/chrono/ChronoLocalDate -java/time/LocalDate -java/time/LocalTime -java/time/InstantSource -java/time/Clock -java/time/Clock$SystemClock -java/time/Instant -java/time/format/DateTimePrintContext -java/time/temporal/TemporalQueries -java/time/temporal/TemporalQueries$1 -java/time/temporal/TemporalQueries$2 -java/time/temporal/TemporalQueries$3 -java/time/temporal/TemporalQueries$4 -java/time/temporal/TemporalQueries$5 -java/time/temporal/TemporalQueries$6 -java/time/temporal/TemporalQueries$7 -java/time/LocalDate$1 -java/time/format/DateTimeFormatterBuilder$2 -java/time/LocalTime$1 -java/math/BigDecimal -java/math/RoundingMode -java/text/Format -java/text/DateFormat -java/util/spi/LocaleServiceProvider -java/text/spi/DateFormatProvider -sun/util/locale/provider/LocaleProviderAdapter -sun/util/locale/provider/LocaleProviderAdapter$Type -java/util/Collections$UnmodifiableList -java/util/Collections$UnmodifiableRandomAccessList -sun/util/locale/provider/LocaleProviderAdapter$1 -sun/util/locale/provider/ResourceBundleBasedAdapter -sun/util/locale/provider/JRELocaleProviderAdapter -sun/util/cldr/CLDRLocaleProviderAdapter -sun/util/locale/provider/LocaleDataMetaInfo -sun/util/cldr/CLDRBaseLocaleDataMetaInfo -sun/util/locale/LanguageTag -sun/util/locale/ParseStatus -sun/util/locale/StringTokenIterator -sun/util/locale/InternalLocaleBuilder -sun/util/locale/InternalLocaleBuilder$CaseInsensitiveChar -sun/util/locale/BaseLocale$Key -sun/util/locale/LocaleObjectCache -sun/util/locale/BaseLocale$Cache -sun/util/locale/LocaleObjectCache$CacheEntry -java/util/Locale$Cache -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L_L -@lambda-proxy sun/util/cldr/CLDRLocaleProviderAdapter run ()Ljava/security/PrivilegedExceptionAction; ()Ljava/lang/Object; REF_invokeStatic sun/util/cldr/CLDRLocaleProviderAdapter lambda$new$0 ()Lsun/util/locale/provider/LocaleDataMetaInfo; ()Lsun/util/locale/provider/LocaleDataMetaInfo; -@lambda-proxy sun/util/locale/provider/JRELocaleProviderAdapter run (Lsun/util/locale/provider/JRELocaleProviderAdapter;)Ljava/security/PrivilegedAction; ()Ljava/lang/Object; REF_invokeVirtual sun/util/locale/provider/JRELocaleProviderAdapter lambda$getDateFormatProvider$2 ()Ljava/text/spi/DateFormatProvider; ()Ljava/text/spi/DateFormatProvider; -sun/util/locale/provider/AvailableLanguageTags -sun/util/locale/provider/DateFormatProviderImpl -java/util/StringTokenizer -sun/util/locale/provider/CalendarDataUtility -java/util/Locale$Builder -java/text/SimpleDateFormat -java/text/AttributedCharacterIterator$Attribute -java/text/Format$Field -java/text/DateFormat$Field -java/util/Calendar -java/util/TimeZone -sun/util/calendar/ZoneInfo -sun/util/calendar/ZoneInfoFile -sun/util/calendar/ZoneInfoFile$1 -java/io/DataInputStream -sun/util/calendar/ZoneInfoFile$ZoneOffsetTransitionRule -sun/util/spi/CalendarProvider -@lambda-proxy sun/util/locale/provider/JRELocaleProviderAdapter run (Lsun/util/locale/provider/JRELocaleProviderAdapter;)Ljava/security/PrivilegedAction; ()Ljava/lang/Object; REF_invokeVirtual sun/util/locale/provider/JRELocaleProviderAdapter lambda$getCalendarProvider$11 ()Lsun/util/spi/CalendarProvider; ()Lsun/util/spi/CalendarProvider; -sun/util/locale/provider/CalendarProviderImpl -java/util/Calendar$Builder -java/util/GregorianCalendar -sun/util/calendar/CalendarSystem -sun/util/calendar/CalendarSystem$GregorianHolder -sun/util/calendar/AbstractCalendar -sun/util/calendar/BaseCalendar -sun/util/calendar/Gregorian -java/util/spi/CalendarDataProvider -sun/util/locale/provider/LocaleServiceProviderPool -java/text/spi/BreakIteratorProvider -java/text/spi/CollatorProvider -java/text/spi/DateFormatSymbolsProvider -java/text/spi/DecimalFormatSymbolsProvider -java/text/spi/NumberFormatProvider -java/util/spi/CurrencyNameProvider -java/util/spi/LocaleNameProvider -java/util/spi/TimeZoneNameProvider -sun/util/locale/provider/LocaleServiceProviderPool$LocalizedObjectGetter -sun/util/locale/provider/CalendarDataUtility$CalendarWeekParameterGetter -java/util/ResourceBundle$Control -java/util/ResourceBundle -java/util/ResourceBundle$Control$CandidateListCache -java/util/ResourceBundle$SingleFormatControl -java/util/ResourceBundle$NoFallbackControl -java/util/AbstractSequentialList -java/util/LinkedList -java/util/LinkedList$Node -@lambda-proxy sun/util/cldr/CLDRLocaleProviderAdapter run (Lsun/util/cldr/CLDRLocaleProviderAdapter;)Ljava/security/PrivilegedAction; ()Ljava/lang/Object; REF_invokeVirtual sun/util/cldr/CLDRLocaleProviderAdapter lambda$getCalendarDataProvider$1 ()Ljava/util/spi/CalendarDataProvider; ()Ljava/util/spi/CalendarDataProvider; -sun/util/locale/provider/CalendarDataProviderImpl -sun/util/cldr/CLDRCalendarDataProviderImpl -sun/util/locale/provider/LocaleResources -sun/util/resources/LocaleData -sun/util/resources/LocaleData$1 -sun/util/resources/Bundles$Strategy -sun/util/resources/LocaleData$LocaleDataStrategy -sun/util/resources/Bundles -sun/util/resources/Bundles$1 -jdk/internal/access/JavaUtilResourceBundleAccess -java/util/ResourceBundle$1 -java/util/ResourceBundle$2 -sun/util/resources/Bundles$CacheKey -java/util/ListResourceBundle -sun/util/resources/cldr/CalendarData -java/util/ResourceBundle$ResourceBundleProviderHelper -@lambda-proxy java/util/ResourceBundle$ResourceBundleProviderHelper run (Ljava/lang/reflect/Constructor;)Ljava/security/PrivilegedAction; ()Ljava/lang/Object; REF_invokeStatic java/util/ResourceBundle$ResourceBundleProviderHelper lambda$newResourceBundle$0 (Ljava/lang/reflect/Constructor;)Ljava/lang/Void; ()Ljava/lang/Void; -sun/util/resources/Bundles$CacheKeyReference -sun/util/resources/Bundles$BundleReference -sun/util/locale/provider/LocaleResources$ResourceReference -sun/util/calendar/CalendarDate -sun/util/calendar/BaseCalendar$Date -sun/util/calendar/Gregorian$Date -sun/util/calendar/CalendarUtils -java/text/DateFormatSymbols -@lambda-proxy sun/util/locale/provider/JRELocaleProviderAdapter run (Lsun/util/locale/provider/JRELocaleProviderAdapter;)Ljava/security/PrivilegedAction; ()Ljava/lang/Object; REF_invokeVirtual sun/util/locale/provider/JRELocaleProviderAdapter lambda$getDateFormatSymbolsProvider$3 ()Ljava/text/spi/DateFormatSymbolsProvider; ()Ljava/text/spi/DateFormatSymbolsProvider; -sun/util/locale/provider/DateFormatSymbolsProviderImpl -sun/text/resources/cldr/FormatData -java/text/NumberFormat -@lambda-proxy sun/util/locale/provider/JRELocaleProviderAdapter run (Lsun/util/locale/provider/JRELocaleProviderAdapter;)Ljava/security/PrivilegedAction; ()Ljava/lang/Object; REF_invokeVirtual sun/util/locale/provider/JRELocaleProviderAdapter lambda$getNumberFormatProvider$5 ()Ljava/text/spi/NumberFormatProvider; ()Ljava/text/spi/NumberFormatProvider; -sun/util/locale/provider/NumberFormatProviderImpl -java/text/DecimalFormatSymbols -@lambda-proxy sun/util/locale/provider/JRELocaleProviderAdapter run (Lsun/util/locale/provider/JRELocaleProviderAdapter;)Ljava/security/PrivilegedAction; ()Ljava/lang/Object; REF_invokeVirtual sun/util/locale/provider/JRELocaleProviderAdapter lambda$getDecimalFormatSymbolsProvider$4 ()Ljava/text/spi/DecimalFormatSymbolsProvider; ()Ljava/text/spi/DecimalFormatSymbolsProvider; -sun/util/locale/provider/DecimalFormatSymbolsProviderImpl -java/lang/StringLatin1$CharsSpliterator -java/util/stream/IntStream -java/util/stream/IntPipeline -java/util/stream/IntPipeline$Head -java/util/function/IntPredicate -@lambda-proxy java/text/DecimalFormatSymbols test ()Ljava/util/function/IntPredicate; (I)Z REF_invokeStatic java/text/DecimalFormatSymbols lambda$findNonFormatChar$0 (I)Z (I)Z -java/util/stream/IntPipeline$StatelessOp -java/util/stream/IntPipeline$10 -java/util/function/IntConsumer -java/util/stream/Sink$OfInt -java/util/stream/FindOps$FindSink$OfInt -java/util/OptionalInt -@lambda-proxy java/util/stream/FindOps$FindSink$OfInt test ()Ljava/util/function/Predicate; (Ljava/lang/Object;)Z REF_invokeVirtual java/util/OptionalInt isPresent ()Z (Ljava/util/OptionalInt;)Z -@lambda-proxy java/util/stream/FindOps$FindSink$OfInt get ()Ljava/util/function/Supplier; ()Ljava/lang/Object; REF_newInvokeSpecial java/util/stream/FindOps$FindSink$OfInt ()V ()Ljava/util/stream/TerminalSink; -@lambda-proxy java/util/stream/FindOps$FindSink$OfInt test ()Ljava/util/function/Predicate; (Ljava/lang/Object;)Z REF_invokeVirtual java/util/OptionalInt isPresent ()Z (Ljava/util/OptionalInt;)Z -@lambda-proxy java/util/stream/FindOps$FindSink$OfInt get ()Ljava/util/function/Supplier; ()Ljava/lang/Object; REF_newInvokeSpecial java/util/stream/FindOps$FindSink$OfInt ()V ()Ljava/util/stream/TerminalSink; -java/util/stream/Sink$ChainedInt -java/util/stream/IntPipeline$10$1 -java/lang/StringUTF16$CharsSpliterator -java/lang/CharacterData00 -java/text/DecimalFormat -java/text/FieldPosition -java/text/DigitList -java/util/Date -java/text/DontCareFieldPosition -java/text/Format$FieldDelegate -java/text/DontCareFieldPosition$1 -java/text/NumberFormat$Field -java/util/Formatter -java/util/Formatter$Conversion -java/util/Formatter$FormatString -java/util/Formatter$FormatSpecifier -java/util/Formatter$Flags -java/util/Formattable -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.LambdaForm$Holder identity_D LD_D -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.LambdaForm$Holder zero_D L_D -java/lang/invoke/BoundMethodHandle$Species_D -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_D -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L3D_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder getDouble LL_D -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.Invokers$Holder invoke_MT LL_L -sun/invoke/util/ValueConversions$WrapperCache -java/lang/invoke/BoundMethodHandle$Species_DL -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_DL -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L3DL_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.LambdaForm$Holder identity_I LI_I -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.LambdaForm$Holder zero_I L_I -java/lang/invoke/BoundMethodHandle$Species_I -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_I -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L3I_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder getInt LL_I -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic LI_L -java/lang/invoke/BoundMethodHandle$Species_IL -@lambda-form-invoker [SPECIES_RESOLVE] java.lang.invoke.BoundMethodHandle$Species_IL -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L3IL_L -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeStatic L_V -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DirectMethodHandle$Holder invokeSpecial LL_V -@lambda-form-invoker [LF_RESOLVE] java.lang.invoke.DelegatingMethodHandle$Holder reinvoke_L L_V -java/util/IdentityHashMap$IdentityHashMapIterator -java/util/IdentityHashMap$KeyIterator diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/fontconfig.bfc b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/fontconfig.bfc deleted file mode 100644 index ff37a46..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/fontconfig.bfc and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/fontconfig.properties.src b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/fontconfig.properties.src deleted file mode 100644 index 87cd654..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/fontconfig.properties.src +++ /dev/null @@ -1,258 +0,0 @@ -# -# Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved. -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -# -# This code is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# This code is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# version 2 for more details (a copy is included in the LICENSE file that -# accompanied this code). -# -# You should have received a copy of the GNU General Public License version -# 2 along with this work; if not, write to the Free Software Foundation, -# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -# -# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -# or visit www.oracle.com if you need additional information or have any -# questions. -# - -# Version - -version=1 - -# Component Font Mappings - -allfonts.chinese-ms936=SimSun -allfonts.chinese-gb18030=SimSun-18030 -allfonts.chinese-hkscs=MingLiU_HKSCS -allfonts.devanagari=Mangal -allfonts.dingbats=Wingdings -allfonts.symbol=Symbol - -serif.plain.alphabetic=Times New Roman -serif.plain.chinese-ms950=MingLiU -serif.plain.hebrew=David -serif.plain.japanese=MS Mincho -serif.plain.korean=Batang - -serif.bold.alphabetic=Times New Roman Bold -serif.bold.chinese-ms950=PMingLiU -serif.bold.hebrew=David Bold -serif.bold.japanese=MS Mincho -serif.bold.korean=Batang - -serif.italic.alphabetic=Times New Roman Italic -serif.italic.chinese-ms950=PMingLiU -serif.italic.hebrew=David -serif.italic.japanese=MS Mincho -serif.italic.korean=Batang - -serif.bolditalic.alphabetic=Times New Roman Bold Italic -serif.bolditalic.chinese-ms950=PMingLiU -serif.bolditalic.hebrew=David Bold -serif.bolditalic.japanese=MS Mincho -serif.bolditalic.korean=Batang - -sansserif.plain.alphabetic=Arial -sansserif.plain.chinese-ms950=MingLiU -sansserif.plain.hebrew=David -sansserif.plain.japanese=MS Gothic -sansserif.plain.korean=Gulim - -sansserif.bold.alphabetic=Arial Bold -sansserif.bold.chinese-ms950=PMingLiU -sansserif.bold.hebrew=David Bold -sansserif.bold.japanese=MS Gothic -sansserif.bold.korean=Gulim - -sansserif.italic.alphabetic=Arial Italic -sansserif.italic.chinese-ms950=PMingLiU -sansserif.italic.hebrew=David -sansserif.italic.japanese=MS Gothic -sansserif.italic.korean=Gulim - -sansserif.bolditalic.alphabetic=Arial Bold Italic -sansserif.bolditalic.chinese-ms950=PMingLiU -sansserif.bolditalic.hebrew=David Bold -sansserif.bolditalic.japanese=MS Gothic -sansserif.bolditalic.korean=Gulim - -monospaced.plain.alphabetic=Courier New -monospaced.plain.chinese-ms950=MingLiU -monospaced.plain.hebrew=David -monospaced.plain.japanese=MS Gothic -monospaced.plain.korean=GulimChe - -monospaced.bold.alphabetic=Courier New Bold -monospaced.bold.chinese-ms950=PMingLiU -monospaced.bold.hebrew=David Bold -monospaced.bold.japanese=MS Gothic -monospaced.bold.korean=GulimChe - -monospaced.italic.alphabetic=Courier New Italic -monospaced.italic.chinese-ms950=PMingLiU -monospaced.italic.hebrew=David -monospaced.italic.japanese=MS Gothic -monospaced.italic.korean=GulimChe - -monospaced.bolditalic.alphabetic=Courier New Bold Italic -monospaced.bolditalic.chinese-ms950=PMingLiU -monospaced.bolditalic.hebrew=David Bold -monospaced.bolditalic.japanese=MS Gothic -monospaced.bolditalic.korean=GulimChe - -dialog.plain.alphabetic=Arial -dialog.plain.chinese-ms950=MingLiU -dialog.plain.hebrew=David -dialog.plain.japanese=MS Gothic -dialog.plain.korean=Gulim - -dialog.bold.alphabetic=Arial Bold -dialog.bold.chinese-ms950=PMingLiU -dialog.bold.hebrew=David Bold -dialog.bold.japanese=MS Gothic -dialog.bold.korean=Gulim - -dialog.italic.alphabetic=Arial Italic -dialog.italic.chinese-ms950=PMingLiU -dialog.italic.hebrew=David -dialog.italic.japanese=MS Gothic -dialog.italic.korean=Gulim - -dialog.bolditalic.alphabetic=Arial Bold Italic -dialog.bolditalic.chinese-ms950=PMingLiU -dialog.bolditalic.hebrew=David Bold -dialog.bolditalic.japanese=MS Gothic -dialog.bolditalic.korean=Gulim - -dialoginput.plain.alphabetic=Courier New -dialoginput.plain.chinese-ms950=MingLiU -dialoginput.plain.hebrew=David -dialoginput.plain.japanese=MS Gothic -dialoginput.plain.korean=Gulim - -dialoginput.bold.alphabetic=Courier New Bold -dialoginput.bold.chinese-ms950=PMingLiU -dialoginput.bold.hebrew=David Bold -dialoginput.bold.japanese=MS Gothic -dialoginput.bold.korean=Gulim - -dialoginput.italic.alphabetic=Courier New Italic -dialoginput.italic.chinese-ms950=PMingLiU -dialoginput.italic.hebrew=David -dialoginput.italic.japanese=MS Gothic -dialoginput.italic.korean=Gulim - -dialoginput.bolditalic.alphabetic=Courier New Bold Italic -dialoginput.bolditalic.chinese-ms950=PMingLiU -dialoginput.bolditalic.hebrew=David Bold -dialoginput.bolditalic.japanese=MS Gothic -dialoginput.bolditalic.korean=Gulim - -# Search Sequences - -sequence.allfonts=alphabetic/default,dingbats,symbol - -sequence.serif.GBK=alphabetic,chinese-ms936,dingbats,symbol -sequence.sansserif.GBK=alphabetic,chinese-ms936,dingbats,symbol -sequence.monospaced.GBK=chinese-ms936,alphabetic,dingbats,symbol -sequence.dialog.GBK=alphabetic,chinese-ms936,dingbats,symbol -sequence.dialoginput.GBK=alphabetic,chinese-ms936,dingbats,symbol - -sequence.serif.GB18030=alphabetic,chinese-gb18030,dingbats,symbol -sequence.sansserif.GB18030=alphabetic,chinese-gb18030,dingbats,symbol -sequence.monospaced.GB18030=chinese-gb18030,alphabetic,dingbats,symbol -sequence.dialog.GB18030=alphabetic,chinese-gb18030,dingbats,symbol -sequence.dialoginput.GB18030=alphabetic,chinese-gb18030,dingbats,symbol - -sequence.serif.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol -sequence.sansserif.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol -sequence.monospaced.x-windows-950=chinese-ms950,alphabetic,dingbats,symbol -sequence.dialog.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol -sequence.dialoginput.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol - -sequence.serif.x-MS950-HKSCS=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol -sequence.sansserif.x-MS950-HKSCS=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol -sequence.monospaced.x-MS950-HKSCS=chinese-ms950,alphabetic,chinese-hkscs,dingbats,symbol -sequence.dialog.x-MS950-HKSCS=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol -sequence.dialoginput.x-MS950-HKSCS=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol - -sequence.allfonts.UTF-8.hi=alphabetic/1252,devanagari,dingbats,symbol - -sequence.allfonts.windows-1255=hebrew,alphabetic/1252,dingbats,symbol - -sequence.serif.windows-31j=alphabetic,japanese,dingbats,symbol -sequence.sansserif.windows-31j=alphabetic,japanese,dingbats,symbol -sequence.monospaced.windows-31j=japanese,alphabetic,dingbats,symbol -sequence.dialog.windows-31j=alphabetic,japanese,dingbats,symbol -sequence.dialoginput.windows-31j=alphabetic,japanese,dingbats,symbol - -sequence.serif.x-windows-949=alphabetic,korean,dingbats,symbol -sequence.sansserif.x-windows-949=alphabetic,korean,dingbats,symbol -sequence.monospaced.x-windows-949=korean,alphabetic,dingbats,symbol -sequence.dialog.x-windows-949=alphabetic,korean,dingbats,symbol -sequence.dialoginput.x-windows-949=alphabetic,korean,dingbats,symbol - -sequence.allfonts.x-windows-874=alphabetic,dingbats,symbol - -sequence.fallback=chinese-ms950,chinese-hkscs,chinese-ms936,chinese-gb18030,\ - japanese,korean - -# Exclusion Ranges - -exclusion.alphabetic=0700-1e9f,1f00-20ab,20ad-f8ff -exclusion.chinese-gb18030=0390-03d6,2200-22ef,2701-27be -exclusion.hebrew=0041-005a,0060-007a,007f-00ff,20ac-20ac - -# Monospaced to Proportional width variant mapping -# (Experimental private syntax) -proportional.MS_Gothic=MS PGothic -proportional.MS_Mincho=MS PMincho -proportional.MingLiU=PMingLiU - -# Font File Names - -filename.Arial=ARIAL.TTF -filename.Arial_Bold=ARIALBD.TTF -filename.Arial_Italic=ARIALI.TTF -filename.Arial_Bold_Italic=ARIALBI.TTF - -filename.Courier_New=COUR.TTF -filename.Courier_New_Bold=COURBD.TTF -filename.Courier_New_Italic=COURI.TTF -filename.Courier_New_Bold_Italic=COURBI.TTF - -filename.Times_New_Roman=TIMES.TTF -filename.Times_New_Roman_Bold=TIMESBD.TTF -filename.Times_New_Roman_Italic=TIMESI.TTF -filename.Times_New_Roman_Bold_Italic=TIMESBI.TTF - -filename.SimSun=SIMSUN.TTC -filename.SimSun-18030=SIMSUN18030.TTC - -filename.MingLiU=MINGLIU.TTC -filename.PMingLiU=MINGLIU.TTC -filename.MingLiU_HKSCS=hkscsm3u.ttf - -filename.David=DAVID.TTF -filename.David_Bold=DAVIDBD.TTF - -filename.MS_Mincho=MSMINCHO.TTC -filename.MS_PMincho=MSMINCHO.TTC -filename.MS_Gothic=MSGOTHIC.TTC -filename.MS_PGothic=MSGOTHIC.TTC - -filename.Gulim=gulim.TTC -filename.Batang=batang.TTC -filename.GulimChe=gulim.TTC - -filename.Mangal=MANGAL.TTF -filename.Symbol=SYMBOL.TTF -filename.Wingdings=WINGDING.TTF diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/jrt-fs.jar b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/jrt-fs.jar deleted file mode 100644 index 3332334..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/jrt-fs.jar and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/jspawnhelper b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/jspawnhelper deleted file mode 100755 index 41d761f..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/jspawnhelper and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/jvm.cfg b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/jvm.cfg deleted file mode 100644 index 97225c8..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/jvm.cfg +++ /dev/null @@ -1,2 +0,0 @@ --server KNOWN --client IGNORE diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libawt.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libawt.dylib deleted file mode 100644 index 1095039..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libawt.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libawt_lwawt.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libawt_lwawt.dylib deleted file mode 100644 index 5d66da4..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libawt_lwawt.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libfontmanager.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libfontmanager.dylib deleted file mode 100644 index b46e06d..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libfontmanager.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libfreetype.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libfreetype.dylib deleted file mode 100644 index f70acf7..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libfreetype.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjava.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjava.dylib deleted file mode 100644 index 7c6758e..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjava.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjavajpeg.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjavajpeg.dylib deleted file mode 100644 index 8a436f4..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjavajpeg.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjawt.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjawt.dylib deleted file mode 100644 index b1bbb51..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjawt.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjimage.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjimage.dylib deleted file mode 100644 index 93d8031..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjimage.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjli.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjli.dylib deleted file mode 100644 index e755d56..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjli.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjsig.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjsig.dylib deleted file mode 100644 index 290f54b..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjsig.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjsound.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjsound.dylib deleted file mode 100644 index d418f1f..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libjsound.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/liblcms.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/liblcms.dylib deleted file mode 100644 index c0134b7..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/liblcms.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libmlib_image.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libmlib_image.dylib deleted file mode 100644 index a44f01f..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libmlib_image.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libnet.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libnet.dylib deleted file mode 100644 index 76a3841..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libnet.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libnio.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libnio.dylib deleted file mode 100644 index a77084d..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libnio.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libosx.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libosx.dylib deleted file mode 100644 index 34f39cc..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libosx.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libosxapp.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libosxapp.dylib deleted file mode 100644 index a92803e..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libosxapp.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libosxsecurity.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libosxsecurity.dylib deleted file mode 100644 index 41ecfeb..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libosxsecurity.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libosxui.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libosxui.dylib deleted file mode 100644 index d70833c..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libosxui.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libprefs.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libprefs.dylib deleted file mode 100644 index ca19363..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libprefs.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libsplashscreen.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libsplashscreen.dylib deleted file mode 100644 index f423d28..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libsplashscreen.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libverify.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libverify.dylib deleted file mode 100644 index caea7b0..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libverify.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libzip.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libzip.dylib deleted file mode 100644 index 06caa99..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/libzip.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/modules b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/modules deleted file mode 100644 index 5602eaa..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/modules and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/psfont.properties.ja b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/psfont.properties.ja deleted file mode 100644 index d17cf40..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/psfont.properties.ja +++ /dev/null @@ -1,119 +0,0 @@ -# -# -# Copyright (c) 1996, 2000, Oracle and/or its affiliates. All rights reserved. -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -# -# This code is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# This code is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# version 2 for more details (a copy is included in the LICENSE file that -# accompanied this code). -# -# You should have received a copy of the GNU General Public License version -# 2 along with this work; if not, write to the Free Software Foundation, -# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -# -# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -# or visit www.oracle.com if you need additional information or have any -# questions. -# - -# -# Japanese PostScript printer property file -# -font.num=16 -# -serif=serif -timesroman=serif -sansserif=sansserif -helvetica=sansserif -monospaced=monospaced -courier=monospaced -dialog=sansserif -dialoginput=monospaced -# -serif.latin1.plain=Times-Roman -serif.latin1.italic=Times-Italic -serif.latin1.bolditalic=Times-BoldItalic -serif.latin1.bold=Times-Bold -# -sansserif.latin1.plain=Helvetica -sansserif.latin1.italic=Helvetica-Oblique -sansserif.latin1.bolditalic=Helvetica-BoldOblique -sansserif.latin1.bold=Helvetica-Bold -# -monospaced.latin1.plain=Courier -monospaced.latin1.italic=Courier-Oblique -monospaced.latin1.bolditalic=Courier-BoldOblique -monospaced.latin1.bold=Courier-Bold -# -serif.x11jis0208.plain=Ryumin-Light-H -serif.x11jis0208.italic=Ryumin-Light-H -serif.x11jis0208.bolditalic=Ryumin-Light-H -serif.x11jis0208.bold=Ryumin-Light-H -# -sansserif.x11jis0208.plain=GothicBBB-Medium-H -sansserif.x11jis0208.italic=GothicBBB-Medium-H -sansserif.x11jis0208.bolditalic=GothicBBB-Medium-H -sansserif.x11jis0208.bold=GothicBBB-Medium-H -# -monospaced.x11jis0208.plain=GothicBBB-Medium-H -monospaced.x11jis0208.italic=GothicBBB-Medium-H -monospaced.x11jis0208.bolditalic=GothicBBB-Medium-H -monospaced.x11jis0208.bold=GothicBBB-Medium-H -# -serif.x11jis0201.plain=Ryumin-Light.Hankaku -serif.x11jis0201.italic=Ryumin-Light.Hankaku -serif.x11jis0201.bolditalic=Ryumin-Light.Hankaku -serif.x11jis0201.bold=Ryumin-Light.Hankaku -# -sansserif.x11jis0201.plain=GothicBBB-Medium.Hankaku -sansserif.x11jis0201.italic=GothicBBB-Medium.Hankaku -sansserif.x11jis0201.bolditalic=GothicBBB-Medium.Hankaku -sansserif.x11jis0201.bold=GothicBBB-Medium.Hankaku -# -monospaced.x11jis0201.plain=GothicBBB-Medium.Hankaku -monospaced.x11jis0201.italic=GothicBBB-Medium.Hankaku -monospaced.x11jis0201.bolditalic=GothicBBB-Medium.Hankaku -monospaced.x11jis0201.bold=GothicBBB-Medium.Hankaku -# -Helvetica=0 -Helvetica-Bold=1 -Helvetica-Oblique=2 -Helvetica-BoldOblique=3 -Times-Roman=4 -Times-Bold=5 -Times-Italic=6 -Times-BoldItalic=7 -Courier=8 -Courier-Bold=9 -Courier-Oblique=10 -Courier-BoldOblique=11 -GothicBBB-Medium-H=12 -Ryumin-Light-H=13 -GothicBBB-Medium.Hankaku=14 -Ryumin-Light.Hankaku=15 -# -font.0=Helvetica ISOF -font.1=Helvetica-Bold ISOF -font.2=Helvetica-Oblique ISOF -font.3=Helvetica-BoldOblique ISOF -font.4=Times-Roman ISOF -font.5=Times-Bold ISOF -font.6=Times-Italic ISOF -font.7=Times-BoldItalic ISOF -font.8=Courier ISOF -font.9=Courier-Bold ISOF -font.10=Courier-Oblique ISOF -font.11=Courier-BoldOblique ISOF -font.12=GothicBBB-Medium-H findfont -font.13=Ryumin-Light-H findfont -font.14=GothicBBB-Medium.Hankaku findfont -font.15=Ryumin-Light.Hankaku findfont -# diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/psfontj2d.properties b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/psfontj2d.properties deleted file mode 100644 index 5eb2c4b..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/psfontj2d.properties +++ /dev/null @@ -1,323 +0,0 @@ -# -# -# Copyright (c) 1999, Oracle and/or its affiliates. All rights reserved. -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -# -# This code is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# This code is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# version 2 for more details (a copy is included in the LICENSE file that -# accompanied this code). -# -# You should have received a copy of the GNU General Public License version -# 2 along with this work; if not, write to the Free Software Foundation, -# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -# -# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -# or visit www.oracle.com if you need additional information or have any -# questions. - -# -# PostScript printer property file for Java 2D printing. -# -# WARNING: This is an internal implementation file, not a public file. -# Any customisation or reliance on the existence of this file and its -# contents or syntax is discouraged and unsupported. -# It may be incompatibly changed or removed without any notice. -# -# -font.num=35 -# -# Legacy logical font family names and logical font aliases should all -# map to the primary logical font names. -# -serif=serif -times=serif -timesroman=serif -sansserif=sansserif -helvetica=sansserif -dialog=sansserif -dialoginput=monospaced -monospaced=monospaced -courier=monospaced -# -# Next, physical fonts which can be safely mapped to standard postscript fonts -# These keys generally map to a value which is the same as the key, so -# the key/value is just a way to say the font has a mapping. -# Sometimes however we map more than one screen font to the same PS font. -# -avantgarde=avantgarde_book -avantgarde_book=avantgarde_book -avantgarde_demi=avantgarde_demi -avantgarde_book_oblique=avantgarde_book_oblique -avantgarde_demi_oblique=avantgarde_demi_oblique -# -itcavantgarde=avantgarde_book -itcavantgarde=avantgarde_book -itcavantgarde_demi=avantgarde_demi -itcavantgarde_oblique=avantgarde_book_oblique -itcavantgarde_demi_oblique=avantgarde_demi_oblique -# -bookman=bookman_light -bookman_light=bookman_light -bookman_demi=bookman_demi -bookman_light_italic=bookman_light_italic -bookman_demi_italic=bookman_demi_italic -# -# Exclude "helvetica" on its own as that's a legacy name for a logical font -helvetica_bold=helvetica_bold -helvetica_oblique=helvetica_oblique -helvetica_bold_oblique=helvetica_bold_oblique -# -itcbookman_light=bookman_light -itcbookman_demi=bookman_demi -itcbookman_light_italic=bookman_light_italic -itcbookman_demi_italic=bookman_demi_italic -# -# Exclude "courier" on its own as that's a legacy name for a logical font -courier_bold=courier_bold -courier_oblique=courier_oblique -courier_bold_oblique=courier_bold_oblique -# -courier_new=courier -courier_new_bold=courier_bold -# -monotype_century_schoolbook=newcenturyschoolbook -monotype_century_schoolbook_bold=newcenturyschoolbook_bold -monotype_century_schoolbook_italic=newcenturyschoolbook_italic -monotype_century_schoolbook_bold_italic=newcenturyschoolbook_bold_italic -# -newcenturyschoolbook=newcenturyschoolbook -newcenturyschoolbook_bold=newcenturyschoolbook_bold -newcenturyschoolbook_italic=newcenturyschoolbook_italic -newcenturyschoolbook_bold_italic=newcenturyschoolbook_bold_italic -# -palatino=palatino -palatino_bold=palatino_bold -palatino_italic=palatino_italic -palatino_bold_italic=palatino_bold_italic -# -# Exclude "times" on its own as that's a legacy name for a logical font -times_bold=times_roman_bold -times_italic=times_roman_italic -times_bold_italic=times_roman_bold_italic -# -times_roman=times_roman -times_roman_bold=times_roman_bold -times_roman_italic=times_roman_italic -times_roman_bold_italic=times_roman_bold_italic -# -times_new_roman=times_roman -times_new_roman_bold=times_roman_bold -times_new_roman_italic=times_roman_italic -times_new_roman_bold_italic=times_roman_bold_italic -# -zapfchancery_italic=zapfchancery_italic -itczapfchancery_italic=zapfchancery_italic -# -# Next the mapping of the font name + charset + style to Postscript font name -# for the logical fonts. -# -serif.latin1.plain=Times-Roman -serif.latin1.bold=Times-Bold -serif.latin1.italic=Times-Italic -serif.latin1.bolditalic=Times-BoldItalic -serif.symbol.plain=Symbol -serif.dingbats.plain=ZapfDingbats -serif.symbol.bold=Symbol -serif.dingbats.bold=ZapfDingbats -serif.symbol.italic=Symbol -serif.dingbats.italic=ZapfDingbats -serif.symbol.bolditalic=Symbol -serif.dingbats.bolditalic=ZapfDingbats -# -sansserif.latin1.plain=Helvetica -sansserif.latin1.bold=Helvetica-Bold -sansserif.latin1.italic=Helvetica-Oblique -sansserif.latin1.bolditalic=Helvetica-BoldOblique -sansserif.symbol.plain=Symbol -sansserif.dingbats.plain=ZapfDingbats -sansserif.symbol.bold=Symbol -sansserif.dingbats.bold=ZapfDingbats -sansserif.symbol.italic=Symbol -sansserif.dingbats.italic=ZapfDingbats -sansserif.symbol.bolditalic=Symbol -sansserif.dingbats.bolditalic=ZapfDingbats -# -monospaced.latin1.plain=Courier -monospaced.latin1.bold=Courier-Bold -monospaced.latin1.italic=Courier-Oblique -monospaced.latin1.bolditalic=Courier-BoldOblique -monospaced.symbol.plain=Symbol -monospaced.dingbats.plain=ZapfDingbats -monospaced.symbol.bold=Symbol -monospaced.dingbats.bold=ZapfDingbats -monospaced.symbol.italic=Symbol -monospaced.dingbats.italic=ZapfDingbats -monospaced.symbol.bolditalic=Symbol -monospaced.dingbats.bolditalic=ZapfDingbats -# -# Next the mapping of the font name + charset + style to Postscript font name -# for the physical fonts. Since these always report style as plain, the -# style key is always plain. So we map using the face name to the correct -# style for the postscript font. This is possible since the face names can -# be replied upon to be different for each style. -# However an application may try to create a Font applying a style to an -# physical name. We want to map to the correct Postscript font there too -# if possible but we do not map cases where the application tries to -# augment a style (eg ask for a bold version of a bold font) -# Defer to the 2D package to attempt create an artificially styled version -# -avantgarde_book.latin1.plain=AvantGarde-Book -avantgarde_demi.latin1.plain=AvantGarde-Demi -avantgarde_book_oblique.latin1.plain=AvantGarde-BookOblique -avantgarde_demi_oblique.latin1.plain=AvantGarde-DemiOblique -# -avantgarde_book.latin1.bold=AvantGarde-Demi -avantgarde_book.latin1.italic=AvantGarde-BookOblique -avantgarde_book.latin1.bolditalic=AvantGarde-DemiOblique -avantgarde_demi.latin1.italic=AvantGarde-DemiOblique -avantgarde_book_oblique.latin1.bold=AvantGarde-DemiOblique -# -bookman_light.latin1.plain=Bookman-Light -bookman_demi.latin1.plain=Bookman-Demi -bookman_light_italic.latin1.plain=Bookman-LightItalic -bookman_demi_italic.latin1.plain=Bookman-DemiItalic -# -bookman_light.latin1.bold=Bookman-Demi -bookman_light.latin1.italic=Bookman-LightItalic -bookman_light.latin1.bolditalic=Bookman-DemiItalic -bookman_light_bold.latin1.italic=Bookman-DemiItalic -bookman_light_italic.latin1.bold=Bookman-DemiItalic -# -courier.latin1.plain=Courier -courier_bold.latin1.plain=Courier-Bold -courier_oblique.latin1.plain=Courier-Oblique -courier_bold_oblique.latin1.plain=Courier-BoldOblique -courier.latin1.bold=Courier-Bold -courier.latin1.italic=Courier-Oblique -courier.latin1.bolditalic=Courier-BoldOblique -courier_bold.latin1.italic=Courier-BoldOblique -courier_italic.latin1.bold=Courier-BoldOblique -# -helvetica_bold.latin1.plain=Helvetica-Bold -helvetica_oblique.latin1.plain=Helvetica-Oblique -helvetica_bold_oblique.latin1.plain=Helvetica-BoldOblique -helvetica.latin1.bold=Helvetica-Bold -helvetica.latin1.italic=Helvetica-Oblique -helvetica.latin1.bolditalic=Helvetica-BoldOblique -helvetica_bold.latin1.italic=Helvetica-BoldOblique -helvetica_italic.latin1.bold=Helvetica-BoldOblique -# -newcenturyschoolbook.latin1.plain=NewCenturySchlbk-Roman -newcenturyschoolbook_bold.latin1.plain=NewCenturySchlbk-Bold -newcenturyschoolbook_italic.latin1.plain=NewCenturySchlbk-Italic -newcenturyschoolbook_bold_italic.latin1.plain=NewCenturySchlbk-BoldItalic -newcenturyschoolbook.latin1.bold=NewCenturySchlbk-Bold -newcenturyschoolbook.latin1.italic=NewCenturySchlbk-Italic -newcenturyschoolbook.latin1.bolditalic=NewCenturySchlbk-BoldItalic -newcenturyschoolbook_bold.latin1.italic=NewCenturySchlbk-BoldItalic -newcenturyschoolbook_italic.latin1.bold=NewCenturySchlbk-BoldItalic -# -palatino.latin1.plain=Palatino-Roman -palatino_bold.latin1.plain=Palatino-Bold -palatino_italic.latin1.plain=Palatino-Italic -palatino_bold_italic.latin1.plain=Palatino-BoldItalic -palatino.latin1.bold=Palatino-Bold -palatino.latin1.italic=Palatino-Italic -palatino.latin1.bolditalic=Palatino-BoldItalic -palatino_bold.latin1.italic=Palatino-BoldItalic -palatino_italic.latin1.bold=Palatino-BoldItalic -# -times_roman.latin1.plain=Times-Roman -times_roman_bold.latin1.plain=Times-Bold -times_roman_italic.latin1.plain=Times-Italic -times_roman_bold_italic.latin1.plain=Times-BoldItalic -times_roman.latin1.bold=Times-Bold -times_roman.latin1.italic=Times-Italic -times_roman.latin1.bolditalic=Times-BoldItalic -times_roman_bold.latin1.italic=Times-BoldItalic -times_roman_italic.latin1.bold=Times-BoldItalic -# -zapfchancery_italic.latin1.plain=ZapfChancery-MediumItalic -# -# Finally the mappings of PS font names to indexes. -# -AvantGarde-Book=0 -AvantGarde-BookOblique=1 -AvantGarde-Demi=2 -AvantGarde-DemiOblique=3 -Bookman-Demi=4 -Bookman-DemiItalic=5 -Bookman-Light=6 -Bookman-LightItalic=7 -Courier=8 -Courier-Bold=9 -Courier-BoldOblique=10 -Courier-Oblique=11 -Helvetica=12 -Helvetica-Bold=13 -Helvetica-BoldOblique=14 -Helvetica-Narrow=15 -Helvetica-Narrow-Bold=16 -Helvetica-Narrow-BoldOblique=17 -Helvetica-Narrow-Oblique=18 -Helvetica-Oblique=19 -NewCenturySchlbk-Bold=20 -NewCenturySchlbk-BoldItalic=21 -NewCenturySchlbk-Italic=22 -NewCenturySchlbk-Roman=23 -Palatino-Bold=24 -Palatino-BoldItalic=25 -Palatino-Italic=26 -Palatino-Roman=27 -Symbol=28 -Times-Bold=29 -Times-BoldItalic=30 -Times-Italic=31 -Times-Roman=32 -ZapfDingbats=33 -ZapfChancery-MediumItalic=34 -# -font.0=AvantGarde-Book ISOF -font.1=AvantGarde-BookOblique ISOF -font.2=AvantGarde-Demi ISOF -font.3=AvantGarde-DemiOblique ISOF -font.4=Bookman-Demi ISOF -font.5=Bookman-DemiItalic ISOF -font.6=Bookman-Light ISOF -font.7=Bookman-LightItalic ISOF -font.8=Courier ISOF -font.9=Courier-Bold ISOF -font.10=Courier-BoldOblique ISOF -font.11=Courier-Oblique ISOF -font.12=Helvetica ISOF -font.13=Helvetica-Bold ISOF -font.14=Helvetica-BoldOblique ISOF -font.15=Helvetica-Narrow ISOF -font.16=Helvetica-Narrow-Bold ISOF -font.17=Helvetica-Narrow-BoldOblique ISOF -font.18=Helvetica-Narrow-Oblique ISOF -font.19=Helvetica-Oblique ISOF -font.20=NewCenturySchlbk-Bold ISOF -font.21=NewCenturySchlbk-BoldItalic ISOF -font.22=NewCenturySchlbk-Italic ISOF -font.23=NewCenturySchlbk-Roman ISOF -font.24=Palatino-Bold ISOF -font.25=Palatino-BoldItalic ISOF -font.26=Palatino-Italic ISOF -font.27=Palatino-Roman ISOF -font.28=Symbol findfont -font.29=Times-Bold ISOF -font.30=Times-BoldItalic ISOF -font.31=Times-Italic ISOF -font.32=Times-Roman ISOF -font.33=ZapfDingbats findfont -font.34=ZapfChancery-MediumItalic ISOF -# diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/security/blocked.certs b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/security/blocked.certs deleted file mode 100644 index beded9e..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/security/blocked.certs +++ /dev/null @@ -1,39 +0,0 @@ -Algorithm=SHA-256 -03DB9E5E79FE6117177F81C11595AF598CB176AF766290DBCEB2C318B32E39A2 -08C396C006A21055D00826A5781A5CCFCE2C8D053AB3C197637A4A7A5BB9A650 -14E6D2764A4B06701C6CBC376A253775F79C782FBCB6C0EE6F99DE4BA1024ADD -1C5E6985ACC09221DBD1A4B7BBC6D3A8C3F8540D19F20763A9537FDD42B4FFE7 -1F6BF8A3F2399AF7FD04516C2719C566CBAD51F412738F66D0457E1E6BDE6F2D -2A464E4113141352C7962FBD1706ED4B88533EF24D7BBA6CCC5D797FD202F1C4 -31C8FD37DB9B56E708B03D1F01848B068C6DA66F36FB5D82C008C6040FA3E133 -3946901F46B0071E90D78279E82FABABCA177231A704BE72C5B0E8918566EA66 -3E11CF90719F6FB44D94EAC9A156B89BEBE7B8598F28EC58913F2BFCAF91D0C0 -423279423B9FC8CB06F1BB7C3B247522B948D5F18939F378ECC901126DE40BFB -450F1B421BB05C8609854884559C323319619E8B06B001EA2DCBB74A23AA3BE2 -4CBBF8256BC9888A8007B2F386940A2E394378B0D903CBB3863C5A6394B889CE -4FEE0163686ECBD65DB968E7494F55D84B25486D438E9DE558D629D28CD4D176 -535D04DFCE027C70BD5F8A9E0AD4F218E9AFDCF5BBCF9B6DE0D81E148E2E3172 -568FAF38D9F155F624838E2181B1CEB4D8459305EE652B0F810C97C3611BFE19 -585CFE6B7436CBD4E732763A2137D7F49599BA9B1790E688FCEC799C58EB84A6 -5E83124D68D24E8E177E306DF643D5EA99C5A94D6FC34B072F7544A1CABB7C7B -71CB00749B9130FB2707A2664BFF958D0FCC8E161D9674C7450BA0FC2BEAF9D3 -76A45A496031E4DD2D7ED23E8F6FF97DBDEA980BAAC8B0BA94D7EDB551348645 -8A1BD21661C60015065212CC98B1ABB50DFD14C872A208E66BAE890F25C448AF -9ED8F9B0E8E42A1656B8E1DD18F42BA42DC06FE52686173BA2FC70E756F207DC -9FADCE80D62A959F9930D748488C1E22E821F4E1E4A43584B848C2FC11E04D77 -A686FEE577C88AB664D0787ECDFFF035F4806F3DE418DC9E4D516324FFF02083 -A90132CEA1D4F7185E4F688EFFD16F6AC14DFD78356A807599A5DABBEEF3333E -B8686723E415534BC0DBD16326F9486F85B0B0799BF6639334E61DAAE67F36CD -C0D1F42B9F4BF7ACC045B7BB5D4805E10737F67B6310CE505248D543D0D5FE07 -D0156949F1381943442C6974E9B5B49EF441BB799EF20477B90A89C3F33620CE -D151962D954970501C60079258EBCFA38502E0A9F03CD640322B08C0A3117FE5 -D24566BF315F4E597D6E381C87119FB4198F5E9E2607F5F4AB362EF7E2E7672F -D3A936E1A7775A45217C8296A1F22AC5631DCDEC45594099E78EEEBBEDCBA967 -D6CEAE5D9E047FAF7D797858D229AC991AD44316D1E2A37A21926D763153593A -DF21016B00FC54F9FE3BC8B039911BB216E9162FAD2FD14D990AB96E951B49BE -E0E740E4B0F8B3548181FF75B5372FAF4C70B99EC995D694ED0FB91B03FF8D21 -EC30C9C3065A06BB07DC5B1C6B497F370C1CA65C0F30C08E042BA6BCECC78F2C -F5B6F88F75D391A4B1EB336F9E201239FB6B1377DB8CFA7B84736216E5AFFFD7 -FBB12938ABD86C125796EDF4162D291028890A7D6C0C1CCA75FD4B95EBFA7A1A -FC02FD48DB92D4DCE6F11679D38354CF750CFC7F584A520EB90BDE80E241F2BD -FDEDB5BDFCB67411513A61AEE5CB5B5D7C52AF06028EFC996CC1B05B1D6CEA2B diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/security/cacerts b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/security/cacerts deleted file mode 100644 index 23cb0a4..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/security/cacerts and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/security/default.policy b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/security/default.policy deleted file mode 100644 index b22f269..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/security/default.policy +++ /dev/null @@ -1,225 +0,0 @@ -// -// Permissions required by modules stored in a run-time image and loaded -// by the platform class loader. -// -// NOTE that this file is not intended to be modified. If additional -// permissions need to be granted to the modules in this file, it is -// recommended that they be configured in a separate policy file or -// ${java.home}/conf/security/java.policy. -// - - -grant codeBase "jrt:/java.compiler" { - permission java.security.AllPermission; -}; - - -grant codeBase "jrt:/java.net.http" { - permission java.lang.RuntimePermission "accessClassInPackage.sun.net"; - permission java.lang.RuntimePermission "accessClassInPackage.sun.net.util"; - permission java.lang.RuntimePermission "accessClassInPackage.sun.net.www"; - permission java.lang.RuntimePermission "accessClassInPackage.jdk.internal.misc"; - permission java.lang.RuntimePermission "modifyThread"; - permission java.net.SocketPermission "*","connect,resolve"; - permission java.net.URLPermission "http:*","*:*"; - permission java.net.URLPermission "https:*","*:*"; - permission java.net.URLPermission "ws:*","*:*"; - permission java.net.URLPermission "wss:*","*:*"; - permission java.net.URLPermission "socket:*","CONNECT"; // proxy - // For request/response body processors, fromFile, asFile - permission java.io.FilePermission "<>","read,write,delete"; - permission java.util.PropertyPermission "*","read"; - permission java.net.NetPermission "getProxySelector"; -}; - -grant codeBase "jrt:/java.scripting" { - permission java.security.AllPermission; -}; - -grant codeBase "jrt:/java.security.jgss" { - permission java.security.AllPermission; -}; - -grant codeBase "jrt:/java.smartcardio" { - permission javax.smartcardio.CardPermission "*", "*"; - permission java.lang.RuntimePermission "loadLibrary.j2pcsc"; - permission java.lang.RuntimePermission - "accessClassInPackage.sun.security.jca"; - permission java.lang.RuntimePermission - "accessClassInPackage.sun.security.util"; - permission java.util.PropertyPermission - "javax.smartcardio.TerminalFactory.DefaultType", "read"; - permission java.util.PropertyPermission "os.name", "read"; - permission java.util.PropertyPermission "os.arch", "read"; - permission java.util.PropertyPermission "sun.arch.data.model", "read"; - permission java.util.PropertyPermission - "sun.security.smartcardio.library", "read"; - permission java.util.PropertyPermission - "sun.security.smartcardio.t0GetResponse", "read"; - permission java.util.PropertyPermission - "sun.security.smartcardio.t1GetResponse", "read"; - permission java.util.PropertyPermission - "sun.security.smartcardio.t1StripLe", "read"; - // needed for looking up native PC/SC library - permission java.io.FilePermission "<>","read"; - permission java.security.SecurityPermission "putProviderProperty.SunPCSC"; - permission java.security.SecurityPermission - "clearProviderProperties.SunPCSC"; - permission java.security.SecurityPermission - "removeProviderProperty.SunPCSC"; -}; - -grant codeBase "jrt:/java.sql" { - permission java.security.AllPermission; -}; - -grant codeBase "jrt:/java.sql.rowset" { - permission java.security.AllPermission; -}; - - -grant codeBase "jrt:/java.xml.crypto" { - permission java.lang.RuntimePermission - "getStackWalkerWithClassReference"; - permission java.lang.RuntimePermission - "accessClassInPackage.sun.security.util"; - permission java.util.PropertyPermission "*", "read"; - permission java.security.SecurityPermission "putProviderProperty.XMLDSig"; - permission java.security.SecurityPermission - "clearProviderProperties.XMLDSig"; - permission java.security.SecurityPermission - "removeProviderProperty.XMLDSig"; - permission java.security.SecurityPermission - "com.sun.org.apache.xml.internal.security.register"; - permission java.security.SecurityPermission - "getProperty.jdk.xml.dsig.secureValidationPolicy"; - permission java.lang.RuntimePermission - "accessClassInPackage.com.sun.org.apache.xml.internal.*"; - permission java.lang.RuntimePermission - "accessClassInPackage.com.sun.org.apache.xpath.internal"; - permission java.lang.RuntimePermission - "accessClassInPackage.com.sun.org.apache.xpath.internal.*"; - permission java.io.FilePermission "<>","read"; - permission java.net.SocketPermission "*", "connect,resolve"; -}; - - -grant codeBase "jrt:/jdk.accessibility" { - permission java.lang.RuntimePermission "accessClassInPackage.sun.awt"; -}; - -grant codeBase "jrt:/jdk.charsets" { - permission java.util.PropertyPermission "os.name", "read"; - permission java.lang.RuntimePermission "charsetProvider"; - permission java.lang.RuntimePermission - "accessClassInPackage.jdk.internal.access"; - permission java.lang.RuntimePermission - "accessClassInPackage.jdk.internal.misc"; - permission java.lang.RuntimePermission "accessClassInPackage.sun.nio.cs"; -}; - -grant codeBase "jrt:/jdk.crypto.ec" { - permission java.lang.RuntimePermission - "accessClassInPackage.sun.security.*"; - permission java.lang.RuntimePermission "loadLibrary.sunec"; - permission java.security.SecurityPermission "putProviderProperty.SunEC"; - permission java.security.SecurityPermission "clearProviderProperties.SunEC"; - permission java.security.SecurityPermission "removeProviderProperty.SunEC"; -}; - -grant codeBase "jrt:/jdk.crypto.cryptoki" { - permission java.lang.RuntimePermission - "accessClassInPackage.com.sun.crypto.provider"; - permission java.lang.RuntimePermission "accessClassInPackage.jdk.internal.misc"; - permission java.lang.RuntimePermission - "accessClassInPackage.sun.security.*"; - permission java.lang.RuntimePermission "accessClassInPackage.sun.nio.ch"; - permission java.lang.RuntimePermission "loadLibrary.j2pkcs11"; - permission java.util.PropertyPermission "sun.security.pkcs11.allowSingleThreadedModules", "read"; - permission java.util.PropertyPermission "sun.security.pkcs11.disableKeyExtraction", "read"; - permission java.util.PropertyPermission "os.name", "read"; - permission java.util.PropertyPermission "os.arch", "read"; - permission java.util.PropertyPermission "jdk.crypto.KeyAgreement.legacyKDF", "read"; - permission java.security.SecurityPermission "putProviderProperty.*"; - permission java.security.SecurityPermission "clearProviderProperties.*"; - permission java.security.SecurityPermission "removeProviderProperty.*"; - permission java.security.SecurityPermission - "getProperty.auth.login.defaultCallbackHandler"; - permission java.security.SecurityPermission "authProvider.*"; - // Needed for reading PKCS11 config file and NSS library check - permission java.io.FilePermission "<>", "read"; -}; - -grant codeBase "jrt:/jdk.dynalink" { - permission java.security.AllPermission; -}; - -grant codeBase "jrt:/jdk.httpserver" { - permission java.security.AllPermission; -}; - -grant codeBase "jrt:/jdk.internal.le" { - permission java.security.AllPermission; -}; - -grant codeBase "jrt:/jdk.internal.vm.compiler" { - permission java.security.AllPermission; -}; - -grant codeBase "jrt:/jdk.internal.vm.compiler.management" { - permission java.lang.RuntimePermission "accessClassInPackage.jdk.internal.vm.compiler.collections"; - permission java.lang.RuntimePermission "accessClassInPackage.jdk.vm.ci.runtime"; - permission java.lang.RuntimePermission "accessClassInPackage.jdk.vm.ci.services"; - permission java.lang.RuntimePermission "accessClassInPackage.org.graalvm.compiler.core.common"; - permission java.lang.RuntimePermission "accessClassInPackage.org.graalvm.compiler.debug"; - permission java.lang.RuntimePermission "accessClassInPackage.org.graalvm.compiler.hotspot"; - permission java.lang.RuntimePermission "accessClassInPackage.org.graalvm.compiler.options"; - permission java.lang.RuntimePermission "accessClassInPackage.org.graalvm.compiler.phases.common.jmx"; - permission java.lang.RuntimePermission "accessClassInPackage.org.graalvm.compiler.serviceprovider"; -}; - -grant codeBase "jrt:/jdk.jsobject" { - permission java.security.AllPermission; -}; - -grant codeBase "jrt:/jdk.localedata" { - permission java.lang.RuntimePermission "accessClassInPackage.sun.text.*"; - permission java.lang.RuntimePermission "accessClassInPackage.sun.util.*"; -}; - -grant codeBase "jrt:/jdk.naming.dns" { - permission java.security.AllPermission; -}; - -grant codeBase "jrt:/jdk.scripting.nashorn" { - permission java.security.AllPermission; -}; - -grant codeBase "jrt:/jdk.scripting.nashorn.shell" { - permission java.security.AllPermission; -}; - -grant codeBase "jrt:/jdk.security.auth" { - permission java.security.AllPermission; -}; - -grant codeBase "jrt:/jdk.security.jgss" { - permission java.security.AllPermission; -}; - -grant codeBase "jrt:/jdk.zipfs" { - permission java.io.FilePermission "<>", "read,write,delete"; - permission java.lang.RuntimePermission "fileSystemProvider"; - permission java.lang.RuntimePermission "accessUserInformation"; - permission java.util.PropertyPermission "os.name", "read"; - permission java.util.PropertyPermission "user.dir", "read"; - permission java.util.PropertyPermission "user.name", "read"; -}; - -// permissions needed by applications using java.desktop module -grant { - permission java.lang.RuntimePermission "accessClassInPackage.com.sun.beans"; - permission java.lang.RuntimePermission "accessClassInPackage.com.sun.beans.*"; - permission java.lang.RuntimePermission "accessClassInPackage.com.sun.java.swing.plaf.*"; - permission java.lang.RuntimePermission "accessClassInPackage.com.apple.*"; -}; diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/security/public_suffix_list.dat b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/security/public_suffix_list.dat deleted file mode 100644 index 125db03..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/security/public_suffix_list.dat and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/server/libjsig.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/server/libjsig.dylib deleted file mode 100644 index 290f54b..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/server/libjsig.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/server/libjvm.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/server/libjvm.dylib deleted file mode 100644 index f45d9bf..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/server/libjvm.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/shaders.metallib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/shaders.metallib deleted file mode 100644 index 35ba2e8..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/shaders.metallib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/tzdb.dat b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/tzdb.dat deleted file mode 100644 index 327636c..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/lib/tzdb.dat and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/release b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/release deleted file mode 100644 index 3e8cae0..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Home/release +++ /dev/null @@ -1,18 +0,0 @@ -BUILD_INFO="OS: Mac OS X Version: 10.14.6 18G84" -BUILD_SOURCE="git:ce8eca7591182a7d05adf1a25d7feac1059c1ef2" -BUILD_SOURCE_REPO="https://github.com/adoptium/temurin-build.git" -FULL_VERSION="17.0.5+8" -IMAGE_TYPE="JDK" -IMPLEMENTOR="Eclipse Adoptium" -IMPLEMENTOR_VERSION="Temurin-17.0.5+8" -JAVA_VERSION="17.0.5" -JAVA_VERSION_DATE="2022-10-18" -JVM_VARIANT="Hotspot" -JVM_VERSION="17.0.5+8" -LIBC="default" -MODULES="java.base java.datatransfer java.xml java.prefs java.desktop java.logging java.net.http java.transaction.xa java.sql jdk.crypto.ec" -OS_ARCH="x86_64" -OS_NAME="Darwin" -SEMANTIC_VERSION="17.0.5+8" -SOURCE=".:git:46f9a382b49f" -SOURCE_REPO="https://github.com/adoptium/jdk17u.git" diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Info.plist b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Info.plist deleted file mode 100644 index 9ae4671..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/Info.plist +++ /dev/null @@ -1,45 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleExecutable - libjli.dylib - CFBundleGetInfoString - OpenJDK 17.0.5+8 - CFBundleIdentifier - net.java.openjdk.jdk - CFBundleInfoDictionaryVersion - 7.0 - CFBundleName - OpenJDK 17.0.5 - CFBundlePackageType - BNDL - CFBundleShortVersionString - 17.0.5 - CFBundleSignature - ???? - CFBundleVersion - 8 - NSMicrophoneUsageDescription - The application is requesting access to the microphone. - JavaVM - - JVMCapabilities - - CommandLine - - JVMMinimumFrameworkVersion - 13.2.9 - JVMMinimumSystemVersion - 10.12.0 - JVMPlatformVersion - 17.0.5 - JVMVendor - Eclipse Adoptium - JVMVersion - 17.0.5 - - - diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/MacOS/libjli.dylib b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/MacOS/libjli.dylib deleted file mode 100644 index a7c45a1..0000000 Binary files a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/MacOS/libjli.dylib and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/_CodeSignature/CodeResources b/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/_CodeSignature/CodeResources deleted file mode 100644 index 68274a4..0000000 --- a/example/build/mac/Example.app/Contents/PlugIns/temurin-17.jdk/Contents/_CodeSignature/CodeResources +++ /dev/null @@ -1,783 +0,0 @@ - - - - - files - - files2 - - Home/conf/logging.properties - - hash2 - - ti0nM6uZVWsQihlR2JTFqNdrGsegDALDiPnrm+BGxW8= - - - Home/conf/net.properties - - hash2 - - qI7rVsYcDfecjQAKQ94Q26SMdxMMitoa+ULJqM4pp4c= - - - Home/conf/security/java.policy - - hash2 - - 8qAKHew7egl/CBXzOKhHF7oQF9XXqulthC0hiNZ8MlA= - - - Home/conf/security/java.security - - hash2 - - lTT/n0NEBYxeHcVYBcfdn0McCud4t4jUkSVad9oWCPU= - - - Home/conf/security/policy/README.txt - - hash2 - - baB0czSw/qdZL9kmFLK7yLEmU14Smx/uSDd02RTpjrU= - - - Home/conf/security/policy/limited/default_US_export.policy - - hash2 - - dYuTClJvxnCrdTf4wmMhUnBQox9fQhSaLdpiPFagoak= - - - Home/conf/security/policy/limited/default_local.policy - - hash2 - - KyYnVI5hMWFQ1H/8PmytRlygWzzM1Hhet9Iap7qg9EE= - - - Home/conf/security/policy/limited/exempt_local.policy - - hash2 - - jD12SKvNlaJyzhLbhwCCk39Nf2h41zDYPLf7sx64ssk= - - - Home/conf/security/policy/unlimited/default_US_export.policy - - hash2 - - dYuTClJvxnCrdTf4wmMhUnBQox9fQhSaLdpiPFagoak= - - - Home/conf/security/policy/unlimited/default_local.policy - - hash2 - - jYoxjm2Q39fiZhLStjhapwT2hsphNMVR+JKEGNkrhRo= - - - Home/conf/sound.properties - - hash2 - - KZwjYLYVXrKJkOxJzSF1P5fkNEL+j6sD4E8+IT30OmY= - - - Home/legal/java.base/ADDITIONAL_LICENSE_INFO - - hash2 - - ppvOJ1uno1cK9lecsPVWgs11/t/NSeDo6QIicMRHyRY= - - - Home/legal/java.base/ASSEMBLY_EXCEPTION - - hash2 - - pE63tcr1U0xu9TayHttAtNa6v5G/l9nUVZaGhhiyxvs= - - - Home/legal/java.base/LICENSE - - hash2 - - S5q+vEM4BIp8LcGE6fgA3rNJNmvfKOsjwmd6d7TIdyY= - - - Home/legal/java.base/aes.md - - hash2 - - RcbU2kgyXt+/89z3HHBOUEwFeQRDXtI8bVcEbVUetp0= - - - Home/legal/java.base/asm.md - - hash2 - - H/kSdA6E4CRxHe9fpIL/u0bv9kVZdgxGc1Lfp8OaMwc= - - - Home/legal/java.base/c-libutl.md - - hash2 - - vvQGeZItb9+35N2yI61nIjAPYFS6c3u/YYjWD87FF/k= - - - Home/legal/java.base/cldr.md - - hash2 - - 8r0z3tVQoF1Z6PZZQW7zgkkFBFSNhG5jiLHf/Sc6oHc= - - - Home/legal/java.base/icu.md - - hash2 - - rwBX6FU5Bgg/acL7n+ntSui8I0CgseN2pCRwLwAwCyk= - - - Home/legal/java.base/public_suffix.md - - hash2 - - vKGCBTlGJnwfO7XRYISaaikLKu/FerxxVRgMqY24cwE= - - - Home/legal/java.base/unicode.md - - hash2 - - Xk5mI6IaY/m8FupUr0EzuAOOSQwNSZp0Z2+eWmG5xbI= - - - Home/legal/java.datatransfer/ADDITIONAL_LICENSE_INFO - - symlink - ../java.base/ADDITIONAL_LICENSE_INFO - - Home/legal/java.datatransfer/ASSEMBLY_EXCEPTION - - symlink - ../java.base/ASSEMBLY_EXCEPTION - - Home/legal/java.datatransfer/LICENSE - - symlink - ../java.base/LICENSE - - Home/legal/java.desktop/ADDITIONAL_LICENSE_INFO - - symlink - ../java.base/ADDITIONAL_LICENSE_INFO - - Home/legal/java.desktop/ASSEMBLY_EXCEPTION - - symlink - ../java.base/ASSEMBLY_EXCEPTION - - Home/legal/java.desktop/LICENSE - - symlink - ../java.base/LICENSE - - Home/legal/java.desktop/colorimaging.md - - hash2 - - BNYePo5x3UUuvlIAivU3jZ9mQNFFeK61FdxTdZc7AYk= - - - Home/legal/java.desktop/freetype.md - - hash2 - - ExyUz7bKCGaJSG94U7r8n8yD7hFLWyBZazVT3VN+WSU= - - - Home/legal/java.desktop/giflib.md - - hash2 - - yLmfM4kIh9J61W+6nt2Ou8Zoz+BokWhQWpVhPR1LMvg= - - - Home/legal/java.desktop/harfbuzz.md - - hash2 - - 1PZ5+NqiOd8kpOqa/fIH8CJzoUhhAmKs6xbeG1lbqSM= - - - Home/legal/java.desktop/jpeg.md - - hash2 - - WAvlliFu4R4lVLJM6USXOsrt4uv1/7o0pr2MxEHAUEM= - - - Home/legal/java.desktop/lcms.md - - hash2 - - QfTWPmcNdfWTaolarpGeIm9dUMVLWwnbO6TXBSosFVQ= - - - Home/legal/java.desktop/libpng.md - - hash2 - - +eGg5VbzMJJG0wxi7xWd5+Ids5NhF23tpvtXghyYcuw= - - - Home/legal/java.desktop/mesa3d.md - - hash2 - - Y/Tm91yuu8y5XZA/tD5GrHERs2JNCjTxRrJ219nnsVI= - - - Home/legal/java.desktop/xwd.md - - hash2 - - HU/6k8h/NQhLAqeqkKIQhLQBnbT+EAPC5c53W0o4T1k= - - - Home/legal/java.logging/ADDITIONAL_LICENSE_INFO - - symlink - ../java.base/ADDITIONAL_LICENSE_INFO - - Home/legal/java.logging/ASSEMBLY_EXCEPTION - - symlink - ../java.base/ASSEMBLY_EXCEPTION - - Home/legal/java.logging/LICENSE - - symlink - ../java.base/LICENSE - - Home/legal/java.net.http/ADDITIONAL_LICENSE_INFO - - symlink - ../java.base/ADDITIONAL_LICENSE_INFO - - Home/legal/java.net.http/ASSEMBLY_EXCEPTION - - symlink - ../java.base/ASSEMBLY_EXCEPTION - - Home/legal/java.net.http/LICENSE - - symlink - ../java.base/LICENSE - - Home/legal/java.prefs/ADDITIONAL_LICENSE_INFO - - symlink - ../java.base/ADDITIONAL_LICENSE_INFO - - Home/legal/java.prefs/ASSEMBLY_EXCEPTION - - symlink - ../java.base/ASSEMBLY_EXCEPTION - - Home/legal/java.prefs/LICENSE - - symlink - ../java.base/LICENSE - - Home/legal/java.sql/ADDITIONAL_LICENSE_INFO - - symlink - ../java.base/ADDITIONAL_LICENSE_INFO - - Home/legal/java.sql/ASSEMBLY_EXCEPTION - - symlink - ../java.base/ASSEMBLY_EXCEPTION - - Home/legal/java.sql/LICENSE - - symlink - ../java.base/LICENSE - - Home/legal/java.transaction.xa/ADDITIONAL_LICENSE_INFO - - symlink - ../java.base/ADDITIONAL_LICENSE_INFO - - Home/legal/java.transaction.xa/ASSEMBLY_EXCEPTION - - symlink - ../java.base/ASSEMBLY_EXCEPTION - - Home/legal/java.transaction.xa/LICENSE - - symlink - ../java.base/LICENSE - - Home/legal/java.xml/ADDITIONAL_LICENSE_INFO - - symlink - ../java.base/ADDITIONAL_LICENSE_INFO - - Home/legal/java.xml/ASSEMBLY_EXCEPTION - - symlink - ../java.base/ASSEMBLY_EXCEPTION - - Home/legal/java.xml/LICENSE - - symlink - ../java.base/LICENSE - - Home/legal/java.xml/bcel.md - - hash2 - - 6MKqUopaBTFILb/SPskpD82zc69noEhw54C9+YzWrcI= - - - Home/legal/java.xml/dom.md - - hash2 - - icQfPOUKy5YoC3PXqcFxDpbb9vyX1DyrK3SN6T+f5EI= - - - Home/legal/java.xml/jcup.md - - hash2 - - j9TGcyxcHWMmHcLofgUvfeeVLNJl44f4tsr1qzv4xZQ= - - - Home/legal/java.xml/xalan.md - - hash2 - - 6mcia+XP4Zx+eXJcLCShZnYyMmTWn5dHxSjeC0RUGwM= - - - Home/legal/java.xml/xerces.md - - hash2 - - RyIk+Z3oM/T0wZ8vigMX8iEU4cZB9dd/+jpCgKG4AXY= - - - Home/legal/jdk.crypto.ec/ADDITIONAL_LICENSE_INFO - - symlink - ../java.base/ADDITIONAL_LICENSE_INFO - - Home/legal/jdk.crypto.ec/ASSEMBLY_EXCEPTION - - symlink - ../java.base/ASSEMBLY_EXCEPTION - - Home/legal/jdk.crypto.ec/LICENSE - - symlink - ../java.base/LICENSE - - Home/lib/classlist - - hash2 - - dzEFBBgFjEud8WYDttpypjE7kpgOcV0uwsxm8I4HbRU= - - - Home/lib/fontconfig.bfc - - hash2 - - VAmVKiGBJsXBHPDkljZlcRruq1D1ZIJk1whm/KcFqVA= - - - Home/lib/fontconfig.properties.src - - hash2 - - yNIKSjkkBmUlIwa909vI1x4eJGyM2MeYWzLkEBZYoUg= - - - Home/lib/jrt-fs.jar - - hash2 - - 9UfBWJtU8r4Qfyp8QGCRnN6rqQAoY36vo58NOuoPDRo= - - - Home/lib/jspawnhelper - - hash2 - - 41HmOEhbPLuwUIBhMAuUg7IWWyOR9jfx5SG6lNVrq7E= - - - Home/lib/jvm.cfg - - hash2 - - qp77lpREwUhOKa3sq1WhIkWAkGFudmsvEjDvBbw4Z+A= - - - Home/lib/libawt.dylib - - hash2 - - X3kuyd9r+QbSjRAsOmlpwz/fHHKm2DsYqboR8BqXqGE= - - - Home/lib/libawt_lwawt.dylib - - hash2 - - jM5Wkk5uja8m33e2KM74TG6Rdndj+jlvlQ9F15oj+mI= - - - Home/lib/libfontmanager.dylib - - hash2 - - ZRAWEBW/j7uL5NHkR/+1XDOn/LNm8hOTSjUk88pI8yo= - - - Home/lib/libfreetype.dylib - - hash2 - - /ZfxsXVGLqCHWSm4DvP/p5qB8sm/j7rmQNDv7P8UfiU= - - - Home/lib/libjava.dylib - - hash2 - - kl+ZSdzcCcQt7NR0Ow8T8yDWK4ydKM5CIW/uXzwWaQM= - - - Home/lib/libjavajpeg.dylib - - hash2 - - nZY40CjYMTgr6smS1H4RmeIHauVs7kG4QTECZ7UdtuI= - - - Home/lib/libjawt.dylib - - hash2 - - p9j9w6GCpu3mwgFhoBz8uXtfeaLXNyD4p3A6BFg543s= - - - Home/lib/libjimage.dylib - - hash2 - - FcU1GLBYbwI+Vyi6Gw+msd4aFZeMi6JOHs5lypvd944= - - - Home/lib/libjli.dylib - - hash2 - - 1nkpFpLJmkkAf/AZuM/Yy6Ag387jKRLIb6QpC3MGYE8= - - - Home/lib/libjsig.dylib - - hash2 - - TIELz9sATE3A6lQ48c40RA8nV3dFqQCsERjZ5SBu4Rs= - - - Home/lib/libjsound.dylib - - hash2 - - 5YGk7baHo+f4EBgNMjrC6FvEkno+WRLIrsUPebpxf04= - - - Home/lib/liblcms.dylib - - hash2 - - ek1WL8A0MPFRVBpHSNfPv1+I+K0tratPGxjjrA2CUVs= - - - Home/lib/libmlib_image.dylib - - hash2 - - 7Ohq0vekSWDb+H02ieDkIPR6m7B335NmauyG91ZDrJE= - - - Home/lib/libnet.dylib - - hash2 - - Dfo7QVj9QAnvlWqlugHaqgiRM26XefY9uCRXIGarRO0= - - - Home/lib/libnio.dylib - - hash2 - - fL7TXNeyEzsKjrA8ClF66dIG6XRkh7rUB76lWg2kzXg= - - - Home/lib/libosx.dylib - - hash2 - - 3lVQkzl/Ilsw9D5+mDOeENqh+1NpRkTDVzqhCyB7hJg= - - - Home/lib/libosxapp.dylib - - hash2 - - JwpNaMz/XLLgIsl2K1bqdruVmg/3MD2GFlHxaEAPk3k= - - - Home/lib/libosxsecurity.dylib - - hash2 - - 1SfLZq5GwQM83JeDJFjKFH6Ble9BtgtSpCZK6YbukvE= - - - Home/lib/libosxui.dylib - - hash2 - - 0qE80ulb38ISdeq6jBgN3rY1+b3n60qxLeDuIF0BAlo= - - - Home/lib/libprefs.dylib - - hash2 - - pLaz/PIFqZYSTxhbIUb8ufaH63KcNTwdgIZdFSAP2GU= - - - Home/lib/libsplashscreen.dylib - - hash2 - - sFNnUnYds8n/fvUWFA7uLMtElM6eqH6mbkFq5JsLopY= - - - Home/lib/libverify.dylib - - hash2 - - pHQEpoqajcPDzd1+iswtbD3j5E6n0W5CQFdjk0t+1q8= - - - Home/lib/libzip.dylib - - hash2 - - uH0fMO/AtUdjZsZgAdmXgK9JE9iBMGMC74V1HzSKRV0= - - - Home/lib/modules - - hash2 - - jlXYVLqjPUioXD2H0tRL6r8+X6z8KEuKsbyRRz9ZKcg= - - - Home/lib/psfont.properties.ja - - hash2 - - WkvVG5ab8Yf/htlPSnH9+/pgJ2KXX6PHPSZLRXX3x48= - - - Home/lib/psfontj2d.properties - - hash2 - - eAxWXVrz7m9ouIe3XAQc30agWS9nAS8S7raRKD6SYwo= - - - Home/lib/security/blocked.certs - - hash2 - - llcvJD8xwu+BpuYnVC5Zb2qSlc/zx64JXBtZXLFFfe0= - - - Home/lib/security/cacerts - - hash2 - - Du51F56c7pjXcidRP7lk9bTt0qSq5QpNOroQWFKANt8= - - - Home/lib/security/default.policy - - hash2 - - qYRP9RPM5gQcVxp+kUwWD6ytCGyinHHNi9STV7gNXbU= - - - Home/lib/security/public_suffix_list.dat - - hash2 - - DlR0NwJUGfhcWENwIRmnzm1crXvwObirVJlRTUWZ0OQ= - - - Home/lib/server/libjsig.dylib - - hash2 - - TIELz9sATE3A6lQ48c40RA8nV3dFqQCsERjZ5SBu4Rs= - - - Home/lib/server/libjvm.dylib - - hash2 - - w3EHO8fwt7NgQGyb7/nMzPUnvuTJdFiHZKyhD8CsehA= - - - Home/lib/shaders.metallib - - hash2 - - rWznW8AgEVrIf8j8RoxL1+3ZU2oBmbdMI8jKz2Hizww= - - - Home/lib/tzdb.dat - - hash2 - - J0PANEEx4AtzsrR8GITwnyOyiz7NkTWkYNDdh09XvNM= - - - Home/release - - hash2 - - U2YtPWE+ccagaBQk+cxocY1tq4pYlZjqP2sfWdxVTF0= - - - - rules - - ^Resources/ - - ^Resources/.*\.lproj/ - - optional - - weight - 1000 - - ^Resources/.*\.lproj/locversion.plist$ - - omit - - weight - 1100 - - ^Resources/Base\.lproj/ - - weight - 1010 - - ^version.plist$ - - - rules2 - - .*\.dSYM($|/) - - weight - 11 - - ^(.*/)?\.DS_Store$ - - omit - - weight - 2000 - - ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/ - - nested - - weight - 10 - - ^.* - - ^Info\.plist$ - - omit - - weight - 20 - - ^PkgInfo$ - - omit - - weight - 20 - - ^Resources/ - - weight - 20 - - ^Resources/.*\.lproj/ - - optional - - weight - 1000 - - ^Resources/.*\.lproj/locversion.plist$ - - omit - - weight - 1100 - - ^Resources/Base\.lproj/ - - weight - 1010 - - ^[^/]+$ - - nested - - weight - 10 - - ^embedded\.provisionprofile$ - - weight - 20 - - ^version\.plist$ - - weight - 20 - - - - diff --git a/example/build/mac/Example.app/Contents/Resources/be.lproj/Localizable.strings b/example/build/mac/Example.app/Contents/Resources/be.lproj/Localizable.strings deleted file mode 100644 index 292b835..0000000 --- a/example/build/mac/Example.app/Contents/Resources/be.lproj/Localizable.strings +++ /dev/null @@ -1,7 +0,0 @@ -"JRELoadError" = "Немагчыма загрузіць Java."; -"JRExLoadError" = "Немагчыма загрузіць асяродзьдзе выкананьня Java %d."; -"JRExLoadFullError" = "Для гэтай праграмы патрабуецца Java %d або пазьнейшай вэрсіі на кампутары. Спампуйце і ўсталюйце апошнюю вэрсію Java з вэб-сайта www.java.com і паўтарэце спробу."; -"JDKxLoadFullError" = "Для гэтай праграмы патрабуецца Java %d JDK або пазьнейшай вэрсіі на кампутары. Спампуйце і ўсталюйце апошнюю вэрсію Java JDK з вэб-сайта Oracle.com і паўтарэце спробу."; -"MainClassNameRequired" = "Патрабуецца назва галоўнага кляса."; -"JavaDirectoryNotFound" = "Не атрымліваецца пералічыць зьмесьціва каталёга Java."; -"BundlePathContainsColon" = "Немагчыма запусьціць з каталёга, у назьве якога ёсьць сымбаль \"/\"."; diff --git a/example/build/mac/Example.app/Contents/Resources/cs.lproj/Localizable.strings b/example/build/mac/Example.app/Contents/Resources/cs.lproj/Localizable.strings deleted file mode 100644 index cc3dbf1..0000000 --- a/example/build/mac/Example.app/Contents/Resources/cs.lproj/Localizable.strings +++ /dev/null @@ -1,8 +0,0 @@ -"JRELoadError" = "Není možné nahrát Java Runtime Environment."; -"JRExLoadError" = "Není možné nahrát Java %d Runtime Environment."; -"JRExLoadFullError" = "Tato aplikace vyžaduje, aby na Vašem počítači byla instalována Java %d nebo novější. Prosím stáhněte a instalujte nejnovější verzi Javy z adresy www.java.com a zkuste to znovu."; -"JDKxLoadFullError" = "Tato aplikace vyžaduje, aby na Vašem počítači byla instalována Java %d JDK nebo novější. Prosím stáhněte a instalujte nejnovější verzi Javy JDK z adresy Oracle.com a zkuste to znovu."; - -"MainClassNameRequired" = "Je požadován název hlavní třídy."; -"JavaDirectoryNotFound" = "Není možno vyčíst obsah adresáře Java."; -"BundlePathContainsColon" = "Není možno spustit z adresáře, který má znaky \"/\" ve svém názvu."; diff --git a/example/build/mac/Example.app/Contents/Resources/de.lproj/Localizable.strings b/example/build/mac/Example.app/Contents/Resources/de.lproj/Localizable.strings deleted file mode 100644 index b406e15..0000000 --- a/example/build/mac/Example.app/Contents/Resources/de.lproj/Localizable.strings +++ /dev/null @@ -1,7 +0,0 @@ -"JRELoadError" = "Kann die Java Laufzeitumgebung nicht laden."; -"JRExLoadError" = "Kann die Java %d Laufzeitumgebung nicht laden."; -"JRExLoadFullError" = "Diese Anwendung benötigt die Java %d Laufzeitumgebung oder höher auf Ihrem Computer installiert sein. Bitte installieren Sie die neueste Version von Java von www.java.com und erneut versuchen."; -"JDKxLoadFullError" = "Diese Anwendung benötigt die Java %d Laufzeitumgebung oder höher auf Ihrem Computer installiert sein. Bitte installieren Sie die neueste JDK von Oracle.com und erneut versuchen."; -"MainClassNameRequired" = "Hauptklassenname ist erforderlich."; -"JavaDirectoryNotFound" = "Kann den Inhalt des Java-Ordners nicht lesen."; -"BundlePathContainsColon" = "Kann nicht vom einem Ordner aus starten, der \"/\" in seinem Namen enthält."; diff --git a/example/build/mac/Example.app/Contents/Resources/en.lproj/Localizable.strings b/example/build/mac/Example.app/Contents/Resources/en.lproj/Localizable.strings deleted file mode 100644 index b052770..0000000 --- a/example/build/mac/Example.app/Contents/Resources/en.lproj/Localizable.strings +++ /dev/null @@ -1,7 +0,0 @@ -"JRELoadError" = "Unable to load Java Runtime Environment."; -"JRExLoadError" = "Unable to load a Java %d Runtime Environment."; -"JRExLoadFullError" = "This application requires that Java %d or later be installed on your computer. Please download and install the latest version of Java from www.java.com and try again."; -"JDKxLoadFullError" = "This application requires that a Java %d JDK or later be installed on your computer. Please download and install the latest Java JDK from Oracle.com and try again."; -"MainClassNameRequired" = "Main class name is required."; -"JavaDirectoryNotFound" = "Unable to enumerate Java directory contents."; -"BundlePathContainsColon" = "Cannot launch from folder that contains a \"/\" in its name."; diff --git a/example/build/mac/Example.app/Contents/Resources/fr.lproj/Localizable.strings b/example/build/mac/Example.app/Contents/Resources/fr.lproj/Localizable.strings deleted file mode 100644 index a19cd11..0000000 --- a/example/build/mac/Example.app/Contents/Resources/fr.lproj/Localizable.strings +++ /dev/null @@ -1,7 +0,0 @@ -"JRELoadError" = "Impossible de charger l'environnement d'exécution Java."; -"JRExLoadError" = "Impossible de charger l'environnement d'exécution Java %d."; -"JRExLoadFullError" = "Cette application nécessite la présence de Java %d ou supérieur sur votre ordinateur. Veuillez télécharger et installer la dernière version de Java depuis www.java.com et essayez à nouveau."; -"JDKxLoadFullError" = "Cette application nécessite la présence d'un JDK Java %d ou supérieur sur votre ordinateur. Veuillez télécharger et installer le dernier JDK Java depuis www.java.com et essayez à nouveau."; -"MainClassNameRequired" = "Le nom de la classe principale est obligatoire."; -"JavaDirectoryNotFound" = "Impossible d'énumérer le contenu du répertoire Java."; -"BundlePathContainsColon" = "Impossible de lancer à partir d'un dossier dont le nom comporte un « / »."; diff --git a/example/build/mac/Example.app/Contents/Resources/ia.lproj/Localizable.strings b/example/build/mac/Example.app/Contents/Resources/ia.lproj/Localizable.strings deleted file mode 100644 index 7e392c3..0000000 --- a/example/build/mac/Example.app/Contents/Resources/ia.lproj/Localizable.strings +++ /dev/null @@ -1,7 +0,0 @@ -"JRELoadError" = "Incapace a cargar Java Runtime Environment."; -"JRExLoadError" = "Incapace a cargar Java %d Runtime Environment."; -"JRExLoadFullError" = "Iste application require que Java %d o plus recente sia installate sur tu computator. Per favor discarga e installa le version ultime de Java ex le sito www.java.com e prova de novo."; -"JDKxLoadFullError" = "Iste application require que un JDK Java %d o plus recente sia installate sur tu computator. Per favor discarga e installa le JDK ultime de Java ex le sito oracle.com e prova de novo."; -"MainClassNameRequired" = "Le 'Main class name' es requirite."; -"JavaDirectoryNotFound" = "Incapace a enumerar le contentos del plica de Java."; -"BundlePathContainsColon" = "Impossibile lancear ex un plica que contine un \"/\" in su nomine."; diff --git a/example/build/mac/Example.app/Contents/Resources/icon.icns b/example/build/mac/Example.app/Contents/Resources/icon.icns deleted file mode 100644 index f9a8af3..0000000 Binary files a/example/build/mac/Example.app/Contents/Resources/icon.icns and /dev/null differ diff --git a/example/build/mac/Example.app/Contents/Resources/it.lproj/Localizable.strings b/example/build/mac/Example.app/Contents/Resources/it.lproj/Localizable.strings deleted file mode 100644 index 0a8ccf0..0000000 --- a/example/build/mac/Example.app/Contents/Resources/it.lproj/Localizable.strings +++ /dev/null @@ -1,7 +0,0 @@ -"JRELoadError" = "Impossibile caricare Java Runtime Environment."; -"JRExLoadError" = "Impossibile caricare un Java %d Runtime Environment."; -"JRExLoadFullError" = "Questa applicazione necessita che Java %d o successivo sia installato nel computer. Scaricare e installare l'ultima versione di Java da www.java.com e riprovare."; -"JDKxLoadFullError" = "Questa applicazione necessita che Java %d JDK oo successivo sia installato sul computer. Scaricare e installare l'ultima versione di Java JDK da Oracle.com e riprovare."; -"MainClassNameRequired" = "È richiesto il nome della classe principale."; -"JavaDirectoryNotFound" = "Impossibile enumerare il contenuto della directory Java."; -"BundlePathContainsColon" = "Impossibile avviare dalla cartella che contiene nel proprio nome un \"/\"."; diff --git a/example/build/mac/Example.app/Contents/Resources/ja.lproj/Localizable.strings b/example/build/mac/Example.app/Contents/Resources/ja.lproj/Localizable.strings deleted file mode 100644 index be1a459..0000000 --- a/example/build/mac/Example.app/Contents/Resources/ja.lproj/Localizable.strings +++ /dev/null @@ -1,7 +0,0 @@ -"JRELoadError" = "Java 実行環境を起動できません。"; -"JRExLoadError" = "Java %d 実行環境を起動できません。"; -"JRExLoadFullError" = "このプログラムを実行するには、Java %d 以降がインストールされている必要があります。www.java.com から最新の Java をダウンロードしてインストールした後に、再度お試しください。"; -"JDKxLoadFullError" = "このプログラムを実行するには、Java %d 以降の JDK がインストールされている必要があります。Oracle.com から最新の Java JDK をダウンロードしてインストールした後に、再度お試しください。"; -"MainClassNameRequired" = "メインクラス名の指定は必須です。"; -"JavaDirectoryNotFound" = "Java ディレクトリのコンテンツを列挙できません。"; -"BundlePathContainsColon" = "名前に \"/\" 記号を含むフォルダーからは起動できません。"; diff --git a/example/build/mac/Example.app/Contents/Resources/nl.lproj/Localizable.strings b/example/build/mac/Example.app/Contents/Resources/nl.lproj/Localizable.strings deleted file mode 100644 index 5613b5f..0000000 --- a/example/build/mac/Example.app/Contents/Resources/nl.lproj/Localizable.strings +++ /dev/null @@ -1,7 +0,0 @@ -"JRELoadError" = "Niet mogelijk Java Runtime Environment te laden."; -"JRExLoadError" = "Niet mogelijk Java %d Runtime Environment te laden."; -"JRExLoadFullError" = "Deze toepassing vereist dat Java %d of later moet zijn geïnstalleerd op uw computer. Download en installeer de laatste versie van Java vanaf www.java.com en probeer opnieuw."; -"JDKxLoadFullError" = "Deze toepassing vereist dat Java %d JDK of later moet zijn geïnstalleerd op uw computer. Download en installeer de laatste Java JDK vanaf Oracle.com en probeer opnieuw."; -"MainClassNameRequired" = "Naam voor hoofdklasse is vereist."; -"JavaDirectoryNotFound" = "Niet mogelijk inhoud van map Java te nummeren."; -"BundlePathContainsColon" = "Kan niet starten vanuit een map die een \"/\" in zijn naam heeft."; diff --git a/example/build/mac/Example.app/Contents/Resources/no.lproj/Localizable.strings b/example/build/mac/Example.app/Contents/Resources/no.lproj/Localizable.strings deleted file mode 100644 index 7132cf6..0000000 --- a/example/build/mac/Example.app/Contents/Resources/no.lproj/Localizable.strings +++ /dev/null @@ -1,7 +0,0 @@ -"JRELoadError" = "Kunne ikke laste inn Java Runtime Environment."; -"JRExLoadError" = "Kunne ikke laste et Java %d Runtime Environment."; -"JRExLoadFullError" = "Dette programmet krever at Java %d eller nyere er installert på datamaskinen. Last ned og installer den nyeste versjonen av Java fra www.java.com og prøv på nytt."; -"JDKxLoadFullError" = "Dette programmet krever at en Java %d JDK eller nyere er installert på datamaskinen. Last ned og installer den nyeste Java JDK fra Oracle.com og prøv på nytt."; -"MainClassNameRequired" = "Hovednavn for klasse kreves."; -"JavaDirectoryNotFound" = "Kunne ikke liste opp innholdet i Java-mappen."; -"BundlePathContainsColon" = "Kan ikke kjøre fra en mappe som har en \"/\" i navnet."; diff --git a/example/build/mac/Example.app/Contents/Resources/pt_BR.lproj/Localizable.strings b/example/build/mac/Example.app/Contents/Resources/pt_BR.lproj/Localizable.strings deleted file mode 100644 index 158e504..0000000 --- a/example/build/mac/Example.app/Contents/Resources/pt_BR.lproj/Localizable.strings +++ /dev/null @@ -1,7 +0,0 @@ -"JRELoadError" = "Impossível carregar o Java Runtime Environment."; -"JRExLoadError" = "Impossível carregar um Java %d Runtime Environment."; -"JRExLoadFullError" = "Este programa requer o Java %d ou mais recente instalado no seu computador. Baixe e instale a última versão do Java em www.java.com e tente outra vez."; -"JDKxLoadFullError" = "Este programa requer o Java %d JDK ou mais recente instalado no seu computador. Baixe e instale a última versão do Java JDK em Oracle.com e tente outra vez."; -"MainClassNameRequired" = "Nome de classe principal é necessário."; -"JavaDirectoryNotFound" = "Impossível enumerar o conteúdo da pasta do Java."; -"BundlePathContainsColon" = "Impossível iniciar a partir de uma pasta que contém o caractere \"/\" em seu nome."; diff --git a/example/build/mac/Example.app/Contents/_CodeSignature/CodeResources b/example/build/mac/Example.app/Contents/_CodeSignature/CodeResources deleted file mode 100644 index e2b9d38..0000000 --- a/example/build/mac/Example.app/Contents/_CodeSignature/CodeResources +++ /dev/null @@ -1,394 +0,0 @@ - - - - - files - - Resources/be.lproj/Localizable.strings - - hash - - ZmpcU+ps/EsaGhkyEWg63XET6qY= - - optional - - - Resources/cs.lproj/Localizable.strings - - hash - - ezwgVr2aRCGmbmJwTrRYB0cz0Rc= - - optional - - - Resources/de.lproj/Localizable.strings - - hash - - +mJLtEhpySelrIn0tioL57pHqW8= - - optional - - - Resources/en.lproj/Localizable.strings - - hash - - mP3lwBbK16lEPRevh0ds6UVVR9w= - - optional - - - Resources/fr.lproj/Localizable.strings - - hash - - Ae4G6LavFVD/BBZtj76BKCbveWQ= - - optional - - - Resources/ia.lproj/Localizable.strings - - hash - - /ZMQTv5ryocWPP6vyX87LXF6A5c= - - optional - - - Resources/icon.icns - - 1Ufp6ex83f8GPiqtpsuYLitNfig= - - Resources/it.lproj/Localizable.strings - - hash - - nmFKm+Eh4rQD6nnyNg1ccUcdkGU= - - optional - - - Resources/ja.lproj/Localizable.strings - - hash - - E8AcucoEUJs5t0coBd29a/lj82A= - - optional - - - Resources/nl.lproj/Localizable.strings - - hash - - qUplCJDzn8cvEZ9yB41DfdLECBg= - - optional - - - Resources/no.lproj/Localizable.strings - - hash - - XZvdIFfW4zdErfE5w+Onz4BMVd0= - - optional - - - Resources/pt_BR.lproj/Localizable.strings - - hash - - 36587mN4i3A3zQA13aD1zDGZRUs= - - optional - - - - files2 - - Java/example.jar - - hash - - N43t9fIjbC5XVKP48ABbxq4fCng= - - hash2 - - p1afe6ZfLOoAcifbpqqMf7PDDLnemAeSz/kyQlfDaKs= - - - PlugIns/temurin-17.jdk - - cdhash - - 0Hh6m9CpY6W4rsmFefG04GRCD/g= - - requirement - identifier "net.java.openjdk.jdk" and anchor apple generic and certificate leaf[subject.CN] = "3rd Party Mac Developer Application: Colorize (F9TKFY3EK3)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */ - - Resources/be.lproj/Localizable.strings - - hash - - ZmpcU+ps/EsaGhkyEWg63XET6qY= - - hash2 - - B9IxIQtPA07G9mLernTDEOSP+TgYKsHnxofql6kC3ns= - - optional - - - Resources/cs.lproj/Localizable.strings - - hash - - ezwgVr2aRCGmbmJwTrRYB0cz0Rc= - - hash2 - - g+I8VcNTYvyxQeRdlilorlZ2mRdEkvXECXbGNux4mWI= - - optional - - - Resources/de.lproj/Localizable.strings - - hash - - +mJLtEhpySelrIn0tioL57pHqW8= - - hash2 - - 6o/xvkr/hCNKw6JPKwe8l/GK8c/XwW4kdoBhx59J1tk= - - optional - - - Resources/en.lproj/Localizable.strings - - hash - - mP3lwBbK16lEPRevh0ds6UVVR9w= - - hash2 - - e7h1lvTK2HeaqtV9d7FoHmdGy12JkQGGEt6keTpM4UM= - - optional - - - Resources/fr.lproj/Localizable.strings - - hash - - Ae4G6LavFVD/BBZtj76BKCbveWQ= - - hash2 - - ezmwyPwSgrRnlisx7avOXVf9hw+afpez/7Msq3LF5bI= - - optional - - - Resources/ia.lproj/Localizable.strings - - hash - - /ZMQTv5ryocWPP6vyX87LXF6A5c= - - hash2 - - ois6ycp50nfEB91sZsq1wwZ/z6Rc9YXSpXUk59p7/LM= - - optional - - - Resources/icon.icns - - hash - - 1Ufp6ex83f8GPiqtpsuYLitNfig= - - hash2 - - 6xxhSd6PkJEzbjLwPTVtqvHRY9gnGM3XICxaY5krEC0= - - - Resources/it.lproj/Localizable.strings - - hash - - nmFKm+Eh4rQD6nnyNg1ccUcdkGU= - - hash2 - - hwkqJ/2LOJzFBJADI076Xwwwm80AGB4nLK+kXVO3Z2Y= - - optional - - - Resources/ja.lproj/Localizable.strings - - hash - - E8AcucoEUJs5t0coBd29a/lj82A= - - hash2 - - bqo0P7BZQNX3kk9K49oexlfVt1fNjTdOOuzFXMDbN1Y= - - optional - - - Resources/nl.lproj/Localizable.strings - - hash - - qUplCJDzn8cvEZ9yB41DfdLECBg= - - hash2 - - zGuZeLSLZLcfnD3pmviQ6mvTUG6txdTGMtOjopTYgh4= - - optional - - - Resources/no.lproj/Localizable.strings - - hash - - XZvdIFfW4zdErfE5w+Onz4BMVd0= - - hash2 - - gBPT1qleYUDFcTnCR0PfGhxMH/0igcJZtKNtA61Rc+E= - - optional - - - Resources/pt_BR.lproj/Localizable.strings - - hash - - 36587mN4i3A3zQA13aD1zDGZRUs= - - hash2 - - 7602lj1q5huZ5K0GjtPOuc8TXf8pz3FWeG6Lct6fo4I= - - optional - - - - rules - - ^Resources/ - - ^Resources/.*\.lproj/ - - optional - - weight - 1000 - - ^Resources/.*\.lproj/locversion.plist$ - - omit - - weight - 1100 - - ^Resources/Base\.lproj/ - - weight - 1010 - - ^version.plist$ - - - rules2 - - .*\.dSYM($|/) - - weight - 11 - - ^(.*/)?\.DS_Store$ - - omit - - weight - 2000 - - ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/ - - nested - - weight - 10 - - ^.* - - ^Info\.plist$ - - omit - - weight - 20 - - ^PkgInfo$ - - omit - - weight - 20 - - ^Resources/ - - weight - 20 - - ^Resources/.*\.lproj/ - - optional - - weight - 1000 - - ^Resources/.*\.lproj/locversion.plist$ - - omit - - weight - 1100 - - ^Resources/Base\.lproj/ - - weight - 1010 - - ^[^/]+$ - - nested - - weight - 10 - - ^embedded\.provisionprofile$ - - weight - 20 - - ^version\.plist$ - - weight - 20 - - - - diff --git a/example/build/mac/Example.pkg b/example/build/mac/Example.pkg deleted file mode 100644 index ae146c3..0000000 Binary files a/example/build/mac/Example.pkg and /dev/null differ diff --git a/example/build/pwa/index.html b/example/build/pwa/index.html deleted file mode 100644 index 57c4429..0000000 --- a/example/build/pwa/index.html +++ /dev/null @@ -1,21 +0,0 @@ - - - - - Example - - - - -

Example

-

Colorize logo

- - - \ No newline at end of file diff --git a/example/build/pwa/manifest.json b/example/build/pwa/manifest.json deleted file mode 100644 index d51a18d..0000000 --- a/example/build/pwa/manifest.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/web-manifest-combined.json", - "name": "Example", - "short_name": "Example", - "description": "A simple example PWA.", - "start_url": ".", - "display": "standalone", - "orientation": "portrait", - "background_color": "#EBEBEB", - "theme_color": "#EBEBEB", - "icons": [ - { - "src": "../../../logo.png", - "type": "image/png", - "sizes": "1024x1024" - } - ] -} diff --git a/example/build/pwa/service-worker.js b/example/build/pwa/service-worker.js deleted file mode 100644 index 479bb42..0000000 --- a/example/build/pwa/service-worker.js +++ /dev/null @@ -1,30 +0,0 @@ -// File generated by Colorize Gradle application plugin - -const CACHE_NAME = "example"; - -const RESOURCE_FILES = [ - "/", - "index.html", -"manifest.json", - -]; - -self.addEventListener("install", event => { - event.waitUntil(async () => { - const cache = await caches.open(CACHE_NAME); - return cache.addAll(RESOURCE_FILES); - }); -}); - -self.addEventListener("fetch", event => { - event.respondWith(async () => { - const cache = await caches.open(CACHE_NAME); - const cachedResponse = await cache.match(event.request); - - if (cachedResponse === undefined) { - return fetch(event.request); - } else { - return cachedResponse; - } - }); -}); diff --git a/example/build/resources/main/config.xml b/example/build/resources/main/config.xml deleted file mode 100644 index d5f13c6..0000000 --- a/example/build/resources/main/config.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - @@@NAME - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/example/build/resources/main/entitlements-app.plist b/example/build/resources/main/entitlements-app.plist deleted file mode 100644 index fc66afb..0000000 --- a/example/build/resources/main/entitlements-app.plist +++ /dev/null @@ -1,12 +0,0 @@ - - - - -com.apple.security.app-sandbox - -com.apple.security.network.client - -com.apple.security.files.user-selected.read-write - - - \ No newline at end of file diff --git a/example/build/resources/main/entitlements-jre.plist b/example/build/resources/main/entitlements-jre.plist deleted file mode 100644 index bba32e1..0000000 --- a/example/build/resources/main/entitlements-jre.plist +++ /dev/null @@ -1,10 +0,0 @@ - - - - -com.apple.security.app-sandbox - -com.apple.security.inherit - - - \ No newline at end of file diff --git a/example/build/resources/main/example.jar b/example/build/resources/main/example.jar deleted file mode 100644 index 53e8372..0000000 Binary files a/example/build/resources/main/example.jar and /dev/null differ diff --git a/example/build/resources/main/icon.icns b/example/build/resources/main/icon.icns deleted file mode 100644 index f9a8af3..0000000 Binary files a/example/build/resources/main/icon.icns and /dev/null differ diff --git a/example/build/resources/main/icon.ico b/example/build/resources/main/icon.ico deleted file mode 100644 index cf90065..0000000 Binary files a/example/build/resources/main/icon.ico and /dev/null differ diff --git a/example/build/resources/main/icon.png b/example/build/resources/main/icon.png deleted file mode 100644 index 8a3c10d..0000000 Binary files a/example/build/resources/main/icon.png and /dev/null differ diff --git a/example/build/resources/main/service-worker.html b/example/build/resources/main/service-worker.html deleted file mode 100644 index 0969663..0000000 --- a/example/build/resources/main/service-worker.html +++ /dev/null @@ -1,8 +0,0 @@ - diff --git a/example/build/resources/main/service-worker.js b/example/build/resources/main/service-worker.js deleted file mode 100644 index 2786ebd..0000000 --- a/example/build/resources/main/service-worker.js +++ /dev/null @@ -1,28 +0,0 @@ -// File generated by Colorize Gradle application plugin - -const CACHE_NAME = "{{cacheName}}"; - -const RESOURCE_FILES = [ - "/", - {{resourceFiles}} -]; - -self.addEventListener("install", event => { - event.waitUntil(async () => { - const cache = await caches.open(CACHE_NAME); - return cache.addAll(RESOURCE_FILES); - }); -}); - -self.addEventListener("fetch", event => { - event.respondWith(async () => { - const cache = await caches.open(CACHE_NAME); - const cachedResponse = await cache.match(event.request); - - if (cachedResponse === undefined) { - return fetch(event.request); - } else { - return cachedResponse; - } - }); -}); diff --git a/example/build/staticsite/index.html b/example/build/staticsite/index.html deleted file mode 100644 index d6e0c37..0000000 --- a/example/build/staticsite/index.html +++ /dev/null @@ -1,12 +0,0 @@ - - - - - Example - - - -

Example

-

Colorize logo

- - \ No newline at end of file diff --git a/example/build/staticsite/manifest.json b/example/build/staticsite/manifest.json deleted file mode 100644 index d51a18d..0000000 --- a/example/build/staticsite/manifest.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/web-manifest-combined.json", - "name": "Example", - "short_name": "Example", - "description": "A simple example PWA.", - "start_url": ".", - "display": "standalone", - "orientation": "portrait", - "background_color": "#EBEBEB", - "theme_color": "#EBEBEB", - "icons": [ - { - "src": "../../../logo.png", - "type": "image/png", - "sizes": "1024x1024" - } - ] -} diff --git a/example/build/tmp/compileJava/previous-compilation-data.bin b/example/build/tmp/compileJava/previous-compilation-data.bin deleted file mode 100644 index 75f97ab..0000000 Binary files a/example/build/tmp/compileJava/previous-compilation-data.bin and /dev/null differ diff --git a/example/build/tmp/jar/MANIFEST.MF b/example/build/tmp/jar/MANIFEST.MF deleted file mode 100644 index 58630c0..0000000 --- a/example/build/tmp/jar/MANIFEST.MF +++ /dev/null @@ -1,2 +0,0 @@ -Manifest-Version: 1.0 - diff --git a/readme.md b/readme.md index 0e3f9e7..694e4a3 100644 --- a/readme.md +++ b/readme.md @@ -1,22 +1,25 @@ Gradle application plugin: build applications for Windows, Mac, iOS, Android, and the web ========================================================================================= -Gradle plugin that creates (native) applications for different platforms. It supports multiple -application types, for different source technologies and target platforms: +Gradle plugin that builds native or hybrid applications for different platforms. It supports +multiple application types for different source technologies and target platforms: | Application type | Supported source technology | Supported target platforms | |-------------------------------|-----------------------------|----------------------------| | Native Mac application bundle | Java | Mac | | Native Windows MSI | Java | Windows | -| Cordova app | Web app | iOS, Android, Mac | +| Hybrid iOS app Xcode project | Swift, web app | iOS | | PWA | Web app | iOS, Android, Windows | | Static site | Web app, Markdown | Web | -Building mobile apps requires the development environment for the targeted platforms: +This plugin is basically a Gradle plugin interface on top of the native toolchain for these +platforms. That unfortunately means the plugin requires the native toolchain for each platform +to be available in the development environment and/or build server: - Building iOS and/or Mac apps requires [Xcode](https://developer.apple.com/xcode/) - Building Android apps requires the [Android SDK](https://developer.android.com/sdk/index.html) -- Building Windows installers requires [WIX Toolset](https://wixtoolset.org) +- Generating Xcode projects requires [XcodeGen](https://github.com/yonaskolb/XcodeGen) +- Building Windows installers requires the [WIX Toolset](https://wixtoolset.org) Usage ----- @@ -25,7 +28,7 @@ The plugin is available from the [Gradle plugin registry](https://plugins.gradle plugin to the build is done by adding the following to `build.gradle`: plugins { - id "nl.colorize.gradle.application" version "2023.2" + id "nl.colorize.gradle.application" version "2023.4" } Building native Mac application bundles @@ -56,31 +59,30 @@ The following shows an example on how to define this configuration in Gradle: applicationCategory = "public.app-category.developer-tools" mainClassName = "com.example.app.Main" outputDir = "${buildDir}" - modules = ["java.base", "java.desktop", "java.logging", "java.net.http", "jdk.crypto.ec"] options = ["-Xmx2g"] startOnFirstThread = false } The following configuration options are available: -| Name | Required | Description | -|-------------------------|----------|-------------------------------------------------------------------| -| `name` | yes | Mac application name. | -| `displayName` | no | Optional display name, defaults to the value of `name`. | -| `identifier` | yes | Apple application identfiier, in the format "com.example.name". | -| `bundleVersion` | yes | Application bundle version number. | -| `description` | yes | Short description text. | -| `copyright` | yes | Copyright statement text. | -| `applicationCategory` | yes | Apple application category ID. | -| `minimumSystemVersion` | no | Minimum required Mac OS version number. Defaults to 10.13. | -| `architectures` | no | List of supported CPU architectures. Default is arm64 and x86_64. | -| `mainClassName` | yes | Fully qualified main class name. | -| `jdkPath` | no | Location of JDK. Defaults to `JAVA_HOME`. | -| `modules` | no | List of JDK modules. | -| `options` | no | List of command line options. | -| `startOnFirstThread` | no | When true, starts the application with `-XstartOnFirstThread`. | -| `icon` | yes | Location of the `.icns` file. | -| `outputDir` | no | Output directory path, defaults to `build/mac`. | +| Name | Required | Description | +|-------------------------|----------|-----------------------------------------------------------------------| +| `name` | yes | Mac application name. | +| `displayName` | no | Optional display name, defaults to the value of `name`. | +| `identifier` | yes | Apple application identfiier, in the format "com.example.name". | +| `bundleVersion` | yes | Application bundle version number. | +| `description` | yes | Short description text. | +| `copyright` | yes | Copyright statement text. | +| `applicationCategory` | yes | Apple application category ID. | +| `minimumSystemVersion` | no | Minimum required Mac OS version number. Defaults to 10.13. | +| `architectures` | no | List of supported CPU architectures. Default is `arm64` and `x86_64`. | +| `mainClassName` | yes | Fully qualified main class name. | +| `jdkPath` | no | Location of JDK. Defaults to `JAVA_HOME`. | +| `modules` | no | List of JDK modules. An empty list will embed the entire JDK. | +| `options` | no | List of command line options. | +| `startOnFirstThread` | no | When true, starts the application with `-XstartOnFirstThread`. | +| `icon` | yes | Location of the `.icns` file. | +| `outputDir` | no | Output directory path, defaults to `build/mac`. | - Note that, in addition to the `bundleVersion` property, there is also the concept of build version. This is normally the same as the bundle version, but can be manually specified for each @@ -95,9 +97,18 @@ The following configuration options are available: including application binaries, resources, and libraries, is to create a single "fat JAR" file: ``` - jar.duplicatesStrategy = DuplicatesStrategy.WARN - jar { + duplicatesStrategy = DuplicatesStrategy.WARN + exclude "**/module-info.class" + exclude "**/META-INF/INDEX.LIST" + exclude "**/META-INF/*.SF" + exclude "**/META-INF/*.DSA" + exclude "**/META-INF/*.RSA" + + manifest { + attributes "Main-Class": "com.example.ExampleApp" + } + from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } } @@ -152,50 +163,35 @@ are available: The `inherit` can help to avoid duplicated configuration. When enabled, the `windows` configuration will use matching configuration options defined in the `macApplicationBundle` configuration. -Building Cordova applications ------------------------------ +Generating Xcode projects +------------------------- -Use the **buildCordova** task to create [Cordova](https://cordova.apache.org) applications for -iOS, Android, and Mac. The applications are generated from scratch, the intended usage is that the -Cordova applications are not added to the repository, and are instead treated like build artifacts. +The plugin can generate [Xcode](https://en.wikipedia.org/wiki/Xcode) projects for hybrid iOS apps, +that consist of a Swift app with a web view, that in turn displays the original web application. +The web application files are packaged within the app, they are not loaded from an external +server. This approach is similar to [Cordova](https://cordova.apache.org), but is more lightweight +and assumes all required native functionality is implemented in Swift. -In addition to the development environments for iOS and Android, using this task also requires -[Cordova](https://cordova.apache.org) itself to be installed. Cordova currently *only* supports -Java 8, it does not support newer versions. The plugin will use the environment variable -`JAVA8_HOME` to locate the Java 8 JDK. This allows a newer Java version to be used for the build -itself, while still supporting Cordova Java 8. +Generating the Xcode project can be done using the `xcodeGen` task. This will start +[XcodeGen](https://github.com/yonaskolb/XcodeGen), which means that XcodeGen needs to be available +when using this task. -The plugin can be configured using the `cordova` block: +The following configuration options are available via the `xcode` section: - cordova { - webAppDir = "src" - appId = "nl.colorize.test" - appName = "Example" - displayVersion = "1.0.0" - icon = "icon.png" - buildJson = "/shared/cordova-config/build.json" - } - -The following configuration options are available: +| Name | Required | Description | +|----------------|----------|-------------------------------------------------------------------| +| `appId` | yes | App ID in the form MyApp. | +| `bundleId` | yes | Apple bundleID in the form com.example. | +| `appName` | yes | App display name in the form My App. | +| `appVersion` | yes | App version number in the form 1.2.3. | +| `icon` | yes | PNG file that will be used to generate the app icons. | +| `resourcesDir` | yes | Directory to copy into the app's resources. | +| `outputDir` | no | Directory for the Xcode project, defaults to `build/xcode`. | +| `xcodeGenPath` | no | XcodeGen install location, defaults to `/usr/local/bin/xcodegen`. | -| Name | Required | Description | -|------------------|----------|----------------------------------------------------------------------| -| `webAppDir` | yes | Directory containing the web application files. | -| `outputDir` | no | Output directory for the generated apps, default is `build/cordova`. | -| `platforms` | no | Comma-separated list of platforms, default is `ios,android,osx`. | -| `appId` | yes | Application identifier, e.g. `nl.colorize.test`. | -| `appName` | yes | Application display name. | -| `displayVersion` | yes | Application version in the format x.y.z. | -| `icon` | yes | Application icon, should be a 1024x1024 PNG image. | -| `buildJson` | yes | Location of the Cordova `build.json` configuration file. | -| `dist` | no | Build distribution type, either 'release' (default) or 'debug'. | - -Note that, in addition to the `displayVersion` property, there is also the concept of build -version. This is normally the same as the display version, but can be manually specified for each -build by setting the `buildversion` system property. - -In addition to the actual build, the plugin also adds two convenience tasks, **simulateIOS** and -**simulateAndroid**, to start an iOS/Android simulator for the generated Cordova apps. +Like the Mac application bundle, the `buildversion` system property can be used to set the build +version during the build. If this system property is not present, the build version is the same +as the app version. Building PWAs ------------- @@ -213,13 +209,13 @@ insert HTML that registers a These tasks share the same configuration via the `pwa` configuration section. The following configuration options are available: -| Name | Required | Description | -|-----------------|----------|---------------------------------------------------------------| -| `webAppDir` | yes | Input directory where the original web app is located. | -| `outputDir` | no | Output directory for the generated PWA. | -| `manifest` | yes | Location of the web app manifest JSON file. | -| `serviceWorker` | no | Location of service worker file, will use default if omitted. | -| `cacheName` | yes | Name of the cache the service worker will use. | +| Name | Required | Description | +|-----------------|----------|------------------------------------------------------------------| +| `webAppDir` | yes | Input directory where the original web app is located. | +| `outputDir` | no | Output directory for the generated PWA, defaults to `build/pwa`. | +| `manifest` | yes | Location of the web app manifest JSON file. | +| `serviceWorker` | no | Location of service worker file, will use default if omitted. | +| `cacheName` | yes | Name of the cache the service worker will use. | Building a static site ---------------------- @@ -285,6 +281,7 @@ The plugin comes with an example application, that can be used to test the plugi - Run `gradle createApplicationBundle` to create a Mac application bundle. - Run `gradle signApplicationBundle` to sign a Mac application bundle. - Run `gradle packageMSI` to create a Windows MSI installer. + - Run `gradle xcodeGen` to generate a Xcode project for a hybrid iOS app. - Run `gradle generateStaticSite` to generate a website from Markdown templates. - Run `gradle generatePWA` to create a PWA version of the aforementioned website. diff --git a/resources/App.swift b/resources/App.swift new file mode 100644 index 0000000..21bb000 --- /dev/null +++ b/resources/App.swift @@ -0,0 +1,38 @@ +//----------------------------------------------------------------------------- +// File generated by Colorize Gradle application plugin +//----------------------------------------------------------------------------- + +import SwiftUI +import WebKit + +@main +struct Test_AppApp: App { + var body: some Scene { + WindowGroup { + HybridWebView() + } + } +} + +struct HybridWebView: UIViewRepresentable { + typealias UIViewType = WKWebView + + func makeUIView(context: Context) -> WKWebView { + let preferences: WKPreferences = WKPreferences() + preferences.javaScriptEnabled = true + + let config: WKWebViewConfiguration = WKWebViewConfiguration() + config.preferences = preferences + config.setValue(true, forKey: "_allowUniversalAccessFromFileURLs") + + return WKWebView(frame: .zero, configuration: config) + } + + func updateUIView(_ webView: WKWebView, context: Context) { + DispatchQueue.main.async { + let url = Bundle.main.url(forResource: "index", withExtension: "html")! + webView.loadFileURL(url, allowingReadAccessTo: url) + webView.load(URLRequest(url: url)) + } + } +} diff --git a/resources/Info.plist b/resources/Info.plist new file mode 100644 index 0000000..1c1c275 --- /dev/null +++ b/resources/Info.plist @@ -0,0 +1,54 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleDisplayName + {{displayName}} + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + {{appVersion}} + CFBundleSignature + ???? + CFBundleVersion + {{buildVersion}} + UILaunchScreen + + LSRequiresIPhoneOS + + NSAppTransportSecurity + + NSAllowsArbitraryLoads + + NSAllowsArbitraryLoadsInWebContent + + + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + diff --git a/resources/app-icon-contents.json b/resources/app-icon-contents.json new file mode 100644 index 0000000..5e25765 --- /dev/null +++ b/resources/app-icon-contents.json @@ -0,0 +1,38 @@ +{ + "images" : [ + { + "filename" : "icon-120.png", + "idiom" : "iphone", + "scale" : "2x", + "size" : "60x60" + }, + { + "filename" : "icon-180.png", + "idiom" : "iphone", + "scale" : "3x", + "size" : "60x60" + }, + { + "filename" : "icon-152.png", + "idiom" : "ipad", + "scale" : "2x", + "size" : "76x76" + }, + { + "filename" : "icon-167.png", + "idiom" : "ipad", + "scale" : "2x", + "size" : "83.5x83.5" + }, + { + "filename" : "icon-1024.png", + "idiom" : "ios-marketing", + "scale" : "1x", + "size" : "1024x1024" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/resources/empty-contents.json b/resources/empty-contents.json new file mode 100644 index 0000000..d87f4b1 --- /dev/null +++ b/resources/empty-contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/resources/service-worker.js b/resources/service-worker.js index 2786ebd..8cc7807 100644 --- a/resources/service-worker.js +++ b/resources/service-worker.js @@ -1,4 +1,6 @@ +//----------------------------------------------------------------------------- // File generated by Colorize Gradle application plugin +//----------------------------------------------------------------------------- const CACHE_NAME = "{{cacheName}}"; diff --git a/source/nl/colorize/gradle/application/AppHelper.java b/source/nl/colorize/gradle/application/AppHelper.java index 16f9ebd..cc6bdca 100644 --- a/source/nl/colorize/gradle/application/AppHelper.java +++ b/source/nl/colorize/gradle/application/AppHelper.java @@ -10,10 +10,17 @@ import java.io.File; import java.io.IOException; +import java.io.InputStream; import java.nio.file.Files; import java.nio.file.Path; import java.util.Comparator; +import java.util.Map; +import static java.nio.charset.StandardCharsets.UTF_8; + +/** + * Utility class with shared logic between the different tasks and sub-plugins. + */ public class AppHelper { private AppHelper() { @@ -59,6 +66,18 @@ public static String getEnvironmentVariable(String name) { return value; } + public static File getProjectDir(Project project, String name) { + if (name.startsWith("/")) { + return new File(name); + } else { + return new File(project.getProjectDir().getAbsolutePath() + "/" + name); + } + } + + public static File getProjectFile(Project project, String name) { + return getProjectDir(project, name); + } + public static File getOutputDir(Project project, String name) { File outputDir = new File(project.getBuildDir().getAbsolutePath() + "/" + name); if (!project.getBuildDir().exists()) { @@ -89,4 +108,35 @@ public static void cleanDirectory(File dir) { dir.mkdir(); } + + public static File mkdir(File dir) { + if (!dir.exists()) { + if (!dir.mkdir()) { + throw new IllegalStateException("Unable to create " + dir.getAbsolutePath()); + } + } + return dir; + } + + public static String loadResourceFile(String path) { + try (InputStream stream = AppHelper.class.getClassLoader().getResourceAsStream(path)) { + check(stream != null, "Unable to locate resource file: " + path); + byte[] contents = stream.readAllBytes(); + return new String(contents, UTF_8); + } catch (IOException e) { + throw new IllegalArgumentException("Resource file not found: " + path); + } + } + + /** + * Loads the specified resource file into a string, and then substitutes + * the specified placeholders with the provided values. + */ + public static String loadResourceFile(String path, Map properties) { + String contents = loadResourceFile(path); + for (Map.Entry entry : properties.entrySet()) { + contents = contents.replace(entry.getKey(), entry.getValue()); + } + return contents; + } } diff --git a/source/nl/colorize/gradle/application/ApplicationPlugin.java b/source/nl/colorize/gradle/application/ApplicationPlugin.java index 2c51bca..85748fb 100644 --- a/source/nl/colorize/gradle/application/ApplicationPlugin.java +++ b/source/nl/colorize/gradle/application/ApplicationPlugin.java @@ -6,10 +6,6 @@ package nl.colorize.gradle.application; -import nl.colorize.gradle.application.cordova.BuildCordovaTask; -import nl.colorize.gradle.application.cordova.CordovaExt; -import nl.colorize.gradle.application.cordova.SimulateAndroidTask; -import nl.colorize.gradle.application.cordova.SimulateIOSTask; import nl.colorize.gradle.application.macapplicationbundle.CreateApplicationBundleTask; import nl.colorize.gradle.application.macapplicationbundle.MacApplicationBundleExt; import nl.colorize.gradle.application.macapplicationbundle.SignApplicationBundleTask; @@ -20,6 +16,8 @@ import nl.colorize.gradle.application.staticsite.StaticSiteExt; import nl.colorize.gradle.application.windows.PackageMSITask; import nl.colorize.gradle.application.windows.WindowsExt; +import nl.colorize.gradle.application.xcode.XcodeGenExt; +import nl.colorize.gradle.application.xcode.XcodeGenTask; import org.gradle.api.Plugin; import org.gradle.api.Project; import org.gradle.api.plugins.ExtensionContainer; @@ -35,7 +33,7 @@ public class ApplicationPlugin implements Plugin { public void apply(Project project) { configureMacApplicationBundle(project); configureWindows(project); - configureCordova(project); + configureXcodeGen(project); configurePWA(project); configureStaticSite(project); } @@ -62,14 +60,12 @@ private void configureWindows(Project project) { tasks.getByName("packageMSI").dependsOn("jar"); } - private void configureCordova(Project project) { + private void configureXcodeGen(Project project) { ExtensionContainer ext = project.getExtensions(); - ext.create("cordova", CordovaExt.class); + ext.create("xcode", XcodeGenExt.class); TaskContainer tasks = project.getTasks(); - tasks.create("buildCordova", BuildCordovaTask.class); - tasks.create("simulateIOS", SimulateIOSTask.class); - tasks.create("simulateAndroid", SimulateAndroidTask.class); + tasks.create("xcodeGen", XcodeGenTask.class); } private void configurePWA(Project project) { diff --git a/source/nl/colorize/gradle/application/cordova/AppleIconGenerator.java b/source/nl/colorize/gradle/application/cordova/AppleIconGenerator.java deleted file mode 100644 index 49df836..0000000 --- a/source/nl/colorize/gradle/application/cordova/AppleIconGenerator.java +++ /dev/null @@ -1,140 +0,0 @@ -//----------------------------------------------------------------------------- -// Gradle Application Plugin -// Copyright 2010-2023 Colorize -// Apache license (http://www.apache.org/licenses/LICENSE-2.0) -//----------------------------------------------------------------------------- - -package nl.colorize.gradle.application.cordova; - -import javax.imageio.ImageIO; -import java.awt.Graphics2D; -import java.awt.RenderingHints; -import java.awt.image.BufferedImage; -import java.io.File; -import java.io.IOException; -import java.io.PrintWriter; -import java.nio.charset.StandardCharsets; -import java.util.ArrayList; -import java.util.List; - -public class AppleIconGenerator { - - private static final List IOS_VARIANTS = List.of(60, 76, 1024); - - public void generateIconSet(File original, File location) throws IOException { - BufferedImage sourceImage = loadIcon(original); - List iconSet = toIconSet(sourceImage, IOS_VARIANTS); - - location.mkdir(); - saveIconSet(iconSet, location); - generateContentsJSON(iconSet, new File(location, "Contents.json")); - } - - private BufferedImage loadIcon(File location) throws IOException { - BufferedImage image = ImageIO.read(location); - if (image.getWidth() != image.getHeight()) { - throw new RuntimeException("Image must be square to be used as icon"); - } - return image; - } - - private List toIconSet(BufferedImage original, List variants) { - List iconSet = new ArrayList<>(); - - for (int variant : variants) { - iconSet.add(new Icon(getIconName(variant, 1), 1, scaleIconImage(original, variant))); - if (variant < 1024) { - iconSet.add(new Icon(getIconName(variant, 2), 2, scaleIconImage(original, 2 * variant))); - } - if (variant == 60) { - iconSet.add(new Icon(getIconName(variant, 3), 3, scaleIconImage(original, 3 * variant))); - } - } - - return iconSet; - } - - private String getIconName(int size, int factor) { - if (factor == 1) { - return "icon-" + size + "x" + size + ".png"; - } - return "icon-" + size + "x" + size + "@" + factor + "x.png"; - } - - private BufferedImage scaleIconImage(BufferedImage original, int size) { - if (original.getWidth() == size && original.getHeight() == size) { - return original; - } - - BufferedImage rescaled = new BufferedImage(size, size, BufferedImage.TYPE_INT_ARGB); - Graphics2D g2 = rescaled.createGraphics(); - g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); - g2.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON); - g2.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR); - g2.drawImage(original, 0, 0, size, size, null); - g2.dispose(); - return rescaled; - } - - private void saveIconSet(List iconSet, File dir) throws IOException { - for (Icon icon : iconSet) { - File imageFile = new File(dir, icon.name); - ImageIO.write(icon.image, "png", imageFile); - } - } - - private void generateContentsJSON(List iconSet, File outputFile) { - try (PrintWriter writer = new PrintWriter(outputFile, StandardCharsets.UTF_8)) { - writer.println("{"); - writer.println(" \"images\" : ["); - for (Icon icon : iconSet) { - writer.println(" {"); - writer.println(" \"size\" : \"" + icon.getSize() + "\","); - writer.println(" \"idiom\" : \"" + icon.getIdiom() + "\","); - writer.println(" \"filename\" : \"" + icon.name + "\","); - writer.println(" \"scale\" : \"" + icon.variant + "x\""); - writer.println(iconSet.get(iconSet.size() - 1).equals(icon) ? " }" : " },"); - } - writer.println(" ],"); - writer.println(" \"info\" : {"); - writer.println(" \"version\" : 1,"); - writer.println(" \"author\" : \"xcode\""); - writer.println(" }"); - writer.println("}"); - } catch (IOException e) { - throw new RuntimeException("Unable to generate " + outputFile.getAbsolutePath()); - } - } - - /** - * Represents all properties corresponding to one of the icon images within - * an Apple icon. - */ - private static class Icon { - - private String name; - private int variant; - private BufferedImage image; - - public Icon(String name, int variant, BufferedImage image) { - this.name = name; - this.variant = variant; - this.image = image; - } - - public String getSize() { - int size = image.getWidth() / variant; - return size + "x" + size; - } - - public String getIdiom() { - if (image.getWidth() == 1024) { - return "ios-marketing"; - } else if (image.getWidth() % 76 == 0) { - return "ipad"; - } else { - return "iphone"; - } - } - } -} diff --git a/source/nl/colorize/gradle/application/cordova/BuildCordovaTask.java b/source/nl/colorize/gradle/application/cordova/BuildCordovaTask.java deleted file mode 100644 index cd34aa5..0000000 --- a/source/nl/colorize/gradle/application/cordova/BuildCordovaTask.java +++ /dev/null @@ -1,177 +0,0 @@ -//----------------------------------------------------------------------------- -// Gradle Application Plugin -// Copyright 2010-2023 Colorize -// Apache license (http://www.apache.org/licenses/LICENSE-2.0) -//----------------------------------------------------------------------------- - -package nl.colorize.gradle.application.cordova; - -import org.gradle.api.DefaultTask; -import org.gradle.api.plugins.ExtensionContainer; -import org.gradle.api.tasks.TaskAction; - -import java.io.File; -import java.io.IOException; -import java.io.InputStream; -import java.io.PrintWriter; -import java.nio.charset.StandardCharsets; -import java.nio.file.Files; -import java.nio.file.StandardOpenOption; -import java.util.ArrayList; -import java.util.List; - -public class BuildCordovaTask extends DefaultTask { - - private static final String CONFIG_TEMPLATE_FILE = "config.xml"; - - @TaskAction - public void run() { - ExtensionContainer ext = getProject().getExtensions(); - CordovaExt config = ext.getByType(CordovaExt.class); - run(config); - } - - protected void run(CordovaExt config) { - checkConfiguration(config); - - try { - File outputDir = config.getOutputDir(getProject()); - File configFile = new File(outputDir, "config.xml"); - - if (!configFile.exists()) { - createCordovaApp(config); - - if (config.getPlatformList().contains("ios")) { - generateIconIOS(config); - } - } - - updateConfig(config); - buildCordovaApp(config); - } catch (IOException e) { - throw new RuntimeException("Unable to build Cordova app", e); - } - } - - private void checkConfiguration(CordovaExt config) { - checkConfiguration("webAppDir", config.getWebAppDir()); - checkConfiguration("appId", config.getAppId()); - checkConfiguration("appName", config.getAppName()); - checkConfiguration("version", config.getDisplayVersion()); - checkConfiguration("icon", config.getIcon()); - checkConfiguration("buildJson", config.getBuildJson()); - } - - private void checkConfiguration(String name, String value) { - if (value == null || value.isEmpty()) { - throw new IllegalStateException("Missing required configuration option '" + name + "'"); - } - } - - private void createCordovaApp(CordovaExt config) throws IOException { - File outputDir = config.getOutputDir(getProject()); - outputDir.mkdir(); - - runCordova(config, "cordova", "create", outputDir.getAbsolutePath(), config.getAppId(), - config.getAppName()); - - File icon = new File(config.getIcon()); - File buildJson = new File(config.getBuildJson()); - - Files.copy(icon.toPath(), getOutput(config, "icon.png").toPath()); - Files.copy(buildJson.toPath(), getOutput(config, "build.json").toPath()); - - List platformList = new ArrayList<>(List.of("cordova", "platform", "add")); - platformList.addAll(config.getPlatformList()); - runCordova(config, platformList); - - if (config.getPlatformList().contains("android")) { - rewriteAndroidConfig(outputDir); - } - } - - private void rewriteAndroidConfig(File outputDir) throws IOException { - File buildFile = new File(outputDir.getAbsolutePath() + "/platforms/android/build.gradle"); - - List originalLines = Files.readAllLines(buildFile.toPath(), StandardCharsets.UTF_8); - - try (PrintWriter writer = new PrintWriter(buildFile, StandardCharsets.UTF_8)) { - for (String line : originalLines) { - if (line.trim().startsWith("classpath 'com.android.tools.build:gradle:3")) { - line = "classpath 'com.android.tools.build:gradle:4.0.0'"; - } - writer.println(line); - } - } - - File appBuildFile = new File(outputDir.getAbsolutePath() + "/platforms/android/app/build.gradle"); - - Files.write(appBuildFile.toPath(), - "android.lintOptions.checkReleaseBuilds = false\n".getBytes(StandardCharsets.UTF_8), - StandardOpenOption.APPEND); - } - - private void generateIconIOS(CordovaExt config) { - File iosIconDir = getOutput(config, - "platforms/ios/" + config.getAppName() + "/Images.xcassets/AppIcon.appiconset"); - - try { - AppleIconGenerator iconGenerator = new AppleIconGenerator(); - iconGenerator.generateIconSet(new File(config.getIcon()), iosIconDir); - } catch (IOException e) { - throw new RuntimeException("Unable to generate iOS icon"); - } - } - - private void updateConfig(CordovaExt config) throws IOException { - try (InputStream stream = getClass().getClassLoader().getResourceAsStream(CONFIG_TEMPLATE_FILE)) { - byte[] bytes = stream.readAllBytes(); - String xml = new String(bytes, StandardCharsets.UTF_8); - xml = xml.replace("@@@ID", config.getAppId()); - xml = xml.replace("@@@NAME", config.getAppName()); - xml = xml.replace("@@@VERSION", config.getDisplayVersion()); - xml = xml.replace("@@@BUILDVERSION", config.getBuildVersion()); - - File outputDir = config.getOutputDir(getProject()); - File configFile = new File(outputDir, "config.xml"); - Files.write(configFile.toPath(), xml.getBytes(StandardCharsets.UTF_8)); - } - } - - private void buildCordovaApp(CordovaExt config) { - File outputDir = config.getOutputDir(getProject()); - File appRoot = new File(outputDir, "www"); - - getProject().delete(appRoot); - appRoot.mkdir(); - getProject().copy(copy -> { - copy.from(config.getWebAppDir()); - copy.into(appRoot); - }); - - List command = new ArrayList<>(); - command.add("cordova"); - command.add("build"); - command.addAll(config.getPlatformList()); - if (config.getDist().equals("release")) { - command.add("--release"); - command.add("--device"); - } - - runCordova(config, command); - } - - private void runCordova(CordovaExt config, String... command) { - CordovaRunner runner = new CordovaRunner(getProject(), config); - runner.run(command); - } - - private void runCordova(CordovaExt config, List command) { - runCordova(config, command.toArray(new String[0])); - } - - private File getOutput(CordovaExt config, String path) { - File outputDir = config.getOutputDir(getProject()); - return new File(outputDir.getAbsolutePath() + "/" + path); - } -} diff --git a/source/nl/colorize/gradle/application/cordova/CordovaExt.java b/source/nl/colorize/gradle/application/cordova/CordovaExt.java deleted file mode 100644 index 646cf01..0000000 --- a/source/nl/colorize/gradle/application/cordova/CordovaExt.java +++ /dev/null @@ -1,48 +0,0 @@ -//----------------------------------------------------------------------------- -// Gradle Application Plugin -// Copyright 2010-2023 Colorize -// Apache license (http://www.apache.org/licenses/LICENSE-2.0) -//----------------------------------------------------------------------------- - -package nl.colorize.gradle.application.cordova; - -import lombok.Data; -import nl.colorize.gradle.application.AppHelper; -import org.gradle.api.Project; - -import java.io.File; -import java.util.Arrays; -import java.util.List; - -@Data -public class CordovaExt { - - private String webAppDir; - private String outputDir; - private String platforms; - private String appId; - private String appName; - private String displayVersion; - private String icon; - private String buildJson; - private String dist; - - public CordovaExt() { - outputDir = "cordova"; - displayVersion = "1.0"; - platforms = "ios,android,osx"; - dist = "release"; - } - - public File getOutputDir(Project project) { - return AppHelper.getOutputDir(project, outputDir); - } - - public List getPlatformList() { - return Arrays.asList(platforms.split(",")); - } - - public String getBuildVersion() { - return System.getProperty("buildversion", displayVersion.replace(".", "")); - } -} diff --git a/source/nl/colorize/gradle/application/cordova/CordovaRunner.java b/source/nl/colorize/gradle/application/cordova/CordovaRunner.java deleted file mode 100644 index 9a455a1..0000000 --- a/source/nl/colorize/gradle/application/cordova/CordovaRunner.java +++ /dev/null @@ -1,50 +0,0 @@ -//----------------------------------------------------------------------------- -// Gradle Application Plugin -// Copyright 2010-2023 Colorize -// Apache license (http://www.apache.org/licenses/LICENSE-2.0) -//----------------------------------------------------------------------------- - -package nl.colorize.gradle.application.cordova; - -import org.gradle.api.Project; - -import java.io.File; -import java.util.Arrays; -import java.util.List; - -public class CordovaRunner { - - private Project project; - private CordovaExt config; - - public CordovaRunner(Project project, CordovaExt config) { - this.project = project; - this.config = config; - } - - public void run(String... command) { - run(Arrays.asList(command)); - } - - public void run(List command) { - File outputDir = config.getOutputDir(project); - String java8Home = System.getenv("JAVA8_HOME"); - - if (java8Home == null) { - throw new IllegalStateException("Cordova requires environment variable JAVA8_HOME " + - "that refers to Java 8"); - } - - // This intentionally uses stdout and not the Gradle plugin - // logging API. We want to explicitly show the Cordova - // commands, as this helps a lot to determine the cause of - // configuration errors. - System.out.println(String.join(" ", command)); - - project.exec(exec -> { - exec.commandLine(command); - exec.environment("JAVA_HOME", java8Home); - exec.workingDir(outputDir.getAbsolutePath()); - }); - } -} diff --git a/source/nl/colorize/gradle/application/cordova/SimulateAndroidTask.java b/source/nl/colorize/gradle/application/cordova/SimulateAndroidTask.java deleted file mode 100644 index c48bfaf..0000000 --- a/source/nl/colorize/gradle/application/cordova/SimulateAndroidTask.java +++ /dev/null @@ -1,23 +0,0 @@ -//----------------------------------------------------------------------------- -// Gradle Application Plugin -// Copyright 2010-2023 Colorize -// Apache license (http://www.apache.org/licenses/LICENSE-2.0) -//----------------------------------------------------------------------------- - -package nl.colorize.gradle.application.cordova; - -import org.gradle.api.DefaultTask; -import org.gradle.api.plugins.ExtensionContainer; -import org.gradle.api.tasks.TaskAction; - -public class SimulateAndroidTask extends DefaultTask { - - @TaskAction - public void run() { - ExtensionContainer ext = getProject().getExtensions(); - CordovaExt config = ext.getByType(CordovaExt.class); - - CordovaRunner runner = new CordovaRunner(getProject(), config); - runner.run("cordova", "emulate", "android"); - } -} diff --git a/source/nl/colorize/gradle/application/cordova/SimulateIOSTask.java b/source/nl/colorize/gradle/application/cordova/SimulateIOSTask.java deleted file mode 100644 index 33992b3..0000000 --- a/source/nl/colorize/gradle/application/cordova/SimulateIOSTask.java +++ /dev/null @@ -1,23 +0,0 @@ -//----------------------------------------------------------------------------- -// Gradle Application Plugin -// Copyright 2010-2023 Colorize -// Apache license (http://www.apache.org/licenses/LICENSE-2.0) -//----------------------------------------------------------------------------- - -package nl.colorize.gradle.application.cordova; - -import org.gradle.api.DefaultTask; -import org.gradle.api.plugins.ExtensionContainer; -import org.gradle.api.tasks.TaskAction; - -public class SimulateIOSTask extends DefaultTask { - - @TaskAction - public void run() { - ExtensionContainer ext = getProject().getExtensions(); - CordovaExt config = ext.getByType(CordovaExt.class); - - CordovaRunner runner = new CordovaRunner(getProject(), config); - runner.run("cordova", "emulate", "ios"); - } -} diff --git a/source/nl/colorize/gradle/application/pwa/GeneratePwaTask.java b/source/nl/colorize/gradle/application/pwa/GeneratePwaTask.java index f7737a3..70c1caf 100644 --- a/source/nl/colorize/gradle/application/pwa/GeneratePwaTask.java +++ b/source/nl/colorize/gradle/application/pwa/GeneratePwaTask.java @@ -6,14 +6,15 @@ package nl.colorize.gradle.application.pwa; +import nl.colorize.gradle.application.AppHelper; import org.gradle.api.DefaultTask; import org.gradle.api.tasks.TaskAction; import java.io.File; import java.io.IOException; -import java.io.InputStream; import java.nio.file.Files; import java.nio.file.Path; +import java.util.Map; import java.util.stream.Collectors; import static java.nio.charset.StandardCharsets.UTF_8; @@ -45,18 +46,9 @@ protected void run(PwaExt config) { } } - private String loadResourceFile(String path) { - try (InputStream stream = getClass().getClassLoader().getResourceAsStream(path)) { - byte[] contents = stream.readAllBytes(); - return new String(contents, UTF_8); - } catch (IOException e) { - throw new IllegalArgumentException("Resource file not found: " + path); - } - } - private void rewriteHTML(File indexFile) throws IOException { String manifestSnippet = "\n"; - String serviceWorkerSnippet = loadResourceFile("service-worker.html"); + String serviceWorkerSnippet = AppHelper.loadResourceFile("service-worker.html"); String html = Files.readString(indexFile.toPath(), UTF_8); html = html.replace("", manifestSnippet + ""); @@ -92,9 +84,9 @@ private String prepareServiceWorker(PwaExt config) throws IOException { .map(file -> "\"" + file + "\",\n") .collect(Collectors.joining("")); - String js = loadResourceFile("service-worker.js"); - js = js.replace("{{cacheName}}", config.getCacheName()); - js = js.replace("{{resourceFiles}}", resourceFileList); - return js; + return AppHelper.loadResourceFile("service-worker.js", Map.of( + "{{cacheName}}", config.getCacheName(), + "{{resourceFiles}}", resourceFileList + )); } } diff --git a/source/nl/colorize/gradle/application/xcode/XcodeGenExt.java b/source/nl/colorize/gradle/application/xcode/XcodeGenExt.java new file mode 100644 index 0000000..4c792ca --- /dev/null +++ b/source/nl/colorize/gradle/application/xcode/XcodeGenExt.java @@ -0,0 +1,45 @@ +//----------------------------------------------------------------------------- +// Gradle Application Plugin +// Copyright 2010-2023 Colorize +// Apache license (http://www.apache.org/licenses/LICENSE-2.0) +//----------------------------------------------------------------------------- + +package nl.colorize.gradle.application.xcode; + +import lombok.Data; +import nl.colorize.gradle.application.AppHelper; + +@Data +public class XcodeGenExt { + + private String appId; + private String bundleId; + private String appName; + private String appVersion; + private String icon; + private String deploymentTarget; + private String resourcesDir; + private String outputDir; + private String xcodeGenPath; + + public XcodeGenExt() { + this.outputDir = "xcode"; + this.deploymentTarget = "14.0"; + this.xcodeGenPath = "/usr/local/bin/xcodegen"; + } + + public void validate() { + AppHelper.check(appId != null, "Missing xcodeGen.appId"); + AppHelper.check(bundleId != null, "Missing xcodeGen.bundleId"); + AppHelper.check(appName != null, "Missing xcodeGen.appName"); + AppHelper.check(appVersion != null, "Missing xcodeGen.appVersion"); + AppHelper.check(icon != null, "Missing xcodeGen.icon"); + AppHelper.check(resourcesDir != null, "Missing xcodeGen.resourcesDir"); + + AppHelper.check(!appId.contains(" "), "App ID cannot contain spaces"); + } + + public String getBuildVersion() { + return System.getProperty("buildversion", appVersion); + } +} diff --git a/source/nl/colorize/gradle/application/xcode/XcodeGenTask.java b/source/nl/colorize/gradle/application/xcode/XcodeGenTask.java new file mode 100644 index 0000000..1279043 --- /dev/null +++ b/source/nl/colorize/gradle/application/xcode/XcodeGenTask.java @@ -0,0 +1,156 @@ +//----------------------------------------------------------------------------- +// Gradle Application Plugin +// Copyright 2010-2023 Colorize +// Apache license (http://www.apache.org/licenses/LICENSE-2.0) +//----------------------------------------------------------------------------- + +package nl.colorize.gradle.application.xcode; + +import nl.colorize.gradle.application.AppHelper; +import org.gradle.api.DefaultTask; +import org.gradle.api.tasks.TaskAction; + +import javax.imageio.ImageIO; +import java.awt.Graphics2D; +import java.awt.image.BufferedImage; +import java.io.File; +import java.io.IOException; +import java.io.PrintWriter; +import java.nio.file.Files; +import java.util.List; +import java.util.Map; + +import static java.awt.RenderingHints.KEY_ANTIALIASING; +import static java.awt.RenderingHints.KEY_INTERPOLATION; +import static java.awt.RenderingHints.VALUE_ANTIALIAS_ON; +import static java.awt.RenderingHints.VALUE_INTERPOLATION_BILINEAR; +import static java.awt.image.BufferedImage.TYPE_INT_ARGB; +import static java.nio.charset.StandardCharsets.UTF_8; + +public class XcodeGenTask extends DefaultTask { + + private static final List ICON_VARIANTS = List.of( + new IconVariant(120, "iphone", 2, "60x60"), + new IconVariant(180, "iphone", 3, "60x60"), + new IconVariant(152, "ipad", 2, "76x76"), + new IconVariant(167, "ipad", 2, "83.5x83.5"), + new IconVariant(1024, "ios-marketing", 1, "1024x1024") + ); + + @TaskAction + public void run() { + AppHelper.requireMac(); + XcodeGenExt ext = getProject().getExtensions().getByType(XcodeGenExt.class); + ext.validate(); + requireXcodeGen(ext); + + try { + File outputDir = AppHelper.getOutputDir(getProject(), ext.getOutputDir()); + generateProjectStructure(ext, outputDir); + + File specFile = new File(outputDir, "xcodegen.yml"); + generateSpecFile(ext, specFile); + + List xcodeGenCommand = buildCommand(ext, specFile, outputDir); + getProject().exec(exec -> exec.commandLine(xcodeGenCommand)); + } catch (IOException e) { + throw new RuntimeException("Unable to generate Xcode project", e); + } + } + + private void requireXcodeGen(XcodeGenExt ext) { + String path = ext.getXcodeGenPath(); + File executable = new File(path); + if (!executable.exists()) { + throw new UnsupportedOperationException("XcodeGen not found at " + path); + } + } + + protected void generateProjectStructure(XcodeGenExt ext, File outputDir) throws IOException { + File resourcesDir = AppHelper.mkdir(new File(outputDir, "HybridResources")); + copyResources(ext, resourcesDir); + + File appDir = AppHelper.mkdir(new File(outputDir, ext.getAppId())); + generatePlist(ext, new File(appDir, "Info.plist")); + + String swiftCode = AppHelper.loadResourceFile("App.swift"); + Files.writeString(new File(appDir, "App.swift").toPath(), swiftCode, UTF_8); + + File assetsDir = AppHelper.mkdir(new File(appDir, "Assets.xcassets")); + Files.writeString(new File(assetsDir, "Contents.json").toPath(), + AppHelper.loadResourceFile("empty-contents.json"), UTF_8); + File iconDir = AppHelper.mkdir(new File(assetsDir, "AppIcon.appiconset")); + File icon = AppHelper.getProjectFile(getProject(), ext.getIcon()); + generateIconSet(icon, iconDir); + } + + private void generatePlist(XcodeGenExt ext, File outputFile) throws IOException { + String plist = AppHelper.loadResourceFile("Info.plist", Map.of( + "{{displayName}}", ext.getAppName(), + "{{appVersion}}", ext.getAppVersion(), + "{{buildVersion}}", ext.getBuildVersion() + )); + + Files.writeString(outputFile.toPath(), plist, UTF_8); + } + + protected void generateSpecFile(XcodeGenExt ext, File specFile) { + try (PrintWriter writer = new PrintWriter(specFile, UTF_8)) { + writer.println("name: " + ext.getAppName()); + writer.println("targets:"); + writer.println(" " + ext.getAppId() + ":"); + writer.println(" type: application"); + writer.println(" platform: iOS"); + writer.println(" deploymentTarget: \"" + ext.getDeploymentTarget() + "\""); + writer.println(" sources:"); + writer.println(" - " + ext.getAppId()); + writer.println(" - path: HybridResources"); + writer.println(" type: group"); + writer.println(" settings:"); + writer.println(" base:"); + writer.println(" PRODUCT_BUNDLE_IDENTIFIER: " + ext.getBundleId()); + writer.println(" INFOPLIST_FILE: " + ext.getAppId() + "/Info.plist"); + } catch (IOException e) { + throw new RuntimeException("Unable to generate XcodeGen spec file", e); + } + } + + private void copyResources(XcodeGenExt ext, File outputDir) { + File inputDir = AppHelper.getProjectDir(getProject(), ext.getResourcesDir()); + + getProject().copy(copy -> { + copy.from(inputDir); + copy.into(outputDir); + }); + } + + private void generateIconSet(File baseIconFile, File iconDir) throws IOException { + String metadata = AppHelper.loadResourceFile("app-icon-contents.json"); + Files.writeString(new File(iconDir, "Contents.json").toPath(), metadata, UTF_8); + + BufferedImage base = ImageIO.read(baseIconFile); + + for (IconVariant variant : ICON_VARIANTS) { + BufferedImage image = new BufferedImage(variant.size, variant.size, TYPE_INT_ARGB); + Graphics2D g2 = image.createGraphics(); + g2.setRenderingHint(KEY_ANTIALIASING, VALUE_ANTIALIAS_ON); + g2.setRenderingHint(KEY_INTERPOLATION, VALUE_INTERPOLATION_BILINEAR); + g2.drawImage(base, 0, 0, image.getWidth(), image.getHeight(), null); + g2.dispose(); + + File outputFile = new File(iconDir, "icon-" + variant.size + ".png"); + ImageIO.write(image, "png", outputFile); + } + } + + private List buildCommand(XcodeGenExt ext, File specFile, File outputDir) { + return List.of( + ext.getXcodeGenPath(), + "--spec", specFile.getAbsolutePath(), + "--project", outputDir.getAbsolutePath() + ); + } + + private record IconVariant(int size, String idiom, int scale, String description) { + } +} diff --git a/test/nl/colorize/gradle/application/xcode/XcodeGenTaskTest.java b/test/nl/colorize/gradle/application/xcode/XcodeGenTaskTest.java new file mode 100644 index 0000000..e415d4b --- /dev/null +++ b/test/nl/colorize/gradle/application/xcode/XcodeGenTaskTest.java @@ -0,0 +1,80 @@ +//----------------------------------------------------------------------------- +// Gradle Application Plugin +// Copyright 2010-2023 Colorize +// Apache license (http://www.apache.org/licenses/LICENSE-2.0) +//----------------------------------------------------------------------------- + +package nl.colorize.gradle.application.xcode; + +import nl.colorize.gradle.application.ApplicationPlugin; +import org.gradle.api.Project; +import org.gradle.testfixtures.ProjectBuilder; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.io.TempDir; + +import java.io.File; +import java.io.IOException; +import java.nio.file.Files; + +import static java.nio.charset.StandardCharsets.UTF_8; +import static org.junit.jupiter.api.Assertions.*; + +class XcodeGenTaskTest { + + @Test + void generateSpecFile(@TempDir File tempDir) throws IOException { + XcodeGenExt config = new XcodeGenExt(); + config.setAppId("example"); + config.setBundleId("com.example"); + config.setAppName("Example App"); + config.setAppVersion("1.0"); + config.setIcon("resources/icon.png"); + + XcodeGenTask task = prepareTask(tempDir); + File specFile = new File(tempDir, "spec.yml"); + task.generateSpecFile(config, specFile); + + String expected = """ + name: Example App + targets: + example: + type: application + platform: iOS + deploymentTarget: "12.0" + sources: [example] + settings: + base: + INFOPLIST_FILE: example/Info.plist + PRODUCT_BUNDLE_IDENTIFIER: com.example + """; + + assertEquals(expected, Files.readString(specFile.toPath(), UTF_8)); + } + + @Test + void generateProjectStructure(@TempDir File tempDir) throws IOException { + XcodeGenExt config = new XcodeGenExt(); + config.setAppId("example"); + config.setBundleId("com.example"); + config.setAppName("Example App"); + config.setAppVersion("1.0"); + config.setIcon("resources/icon.png"); + + XcodeGenTask task = prepareTask(tempDir); + task.generateProjectStructure(config, tempDir); + + assertTrue(new File(tempDir, "example").exists()); + assertTrue(new File(tempDir, "HybridResources").exists()); + } + + private XcodeGenTask prepareTask(File tempDir) { + Project project = ProjectBuilder.builder() + .withProjectDir(tempDir) + .build(); + + ApplicationPlugin plugin = new ApplicationPlugin(); + plugin.apply(project); + + return (XcodeGenTask) project.getTasks().getByName("xcodeGen"); + } +}