private static Path createTempFile( String libraryName ) throws IOException {
		int sep = libraryName.lastIndexOf( '/' );
		String name = (sep >= 0) ? libraryName.substring( sep + 1 ) : libraryName;

		int dot = name.lastIndexOf( '.' );
		String prefix = ((dot >= 0) ? name.substring( 0, dot ) : name) + '-';
		String suffix = (dot >= 0) ? name.substring( dot ) : "";

		Path tempDir = getTempDir();

		// Note:
		// Not using Files.createTempFile() here because it uses random number generator SecureRandom,
		// which may take 5-10 seconds to initialize under particular conditions.

		// Use current time in nanoseconds instead of a random number.
		// To avoid (theoretical) collisions, append a counter.
		long nanoTime = System.nanoTime();
		for( int i = 0;; i++ ) {
			String s = prefix + Long.toUnsignedString( nanoTime ) + i + suffix;
			try {
				return Files.createFile( tempDir.resolve( s ) );
			} catch( FileAlreadyExistsException ex ) {
				// ignore --> increment counter and try again
			}
		}
	}
Add prefix and suffix to library name.
<ul>
<li>Windows: libraryName + ".dll"
<li>macOS: "lib" + libraryName + ".dylib"
<li>Linux: "lib" + libraryName + ".so"
</ul>
flatlaf-core/src/main/java/com/formdev/flatlaf/util/NativeLibrary.java