fat file, but missing compatible architecture (have 'i386,x86_64', need 'arm64') Error on Mac M2
Hello There, Can some one help me solve this issue. Installed Flyway Community for apple silicon. I get this error when I run Migrate from local to snowflake
------------------------------------------------------------
flyway migrate -configFiles=config/local.conf
Exception in thread "main" java.lang.UnsatisfiedLinkError: /private/var/folders/kc/9c8z5mns5xsbm1trp8cz0svc0000gq/T/jna--1532003979/jna17466926682767611059.tmp: dlopen(/private/var/folders/kc/9c8z5mns5xsbm1trp8cz0svc0000gq/T/jna--1532003979/jna17466926682767611059.tmp, 0x0001): tried: '/private/var/folders/kc/9c8z5mns5xsbm1trp8cz0svc0000gq/T/jna--1532003979/jna17466926682767611059.tmp' (fat file, but missing compatible architecture (have 'i386,x86_64', need 'arm64')), '/System/Volumes/Preboot/Cryptexes/OS/private/var/folders/kc/9c8z5mns5xsbm1trp8cz0svc0000gq/T/jna--1532003979/jna17466926682767611059.tmp' (no such file), '/private/var/folders/kc/9c8z5mns5xsbm1trp8cz0svc0000gq/T/jna--1532003979/jna17466926682767611059.tmp' (fat file, but missing compatible architecture (have 'i386,x86_64', need 'arm64'))
at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:331)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:197)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:139)
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2404)
at java.base/java.lang.Runtime.load0(Runtime.java:817)
at java.base/java.lang.System.load(System.java:2015)
at com.sun.jna.Native.loadNativeDispatchLibraryFromClasspath(Native.java:947)
at com.sun.jna.Native.loadNativeDispatchLibrary(Native.java:922)
at com.sun.jna.Native.<clinit>(Native.java:190)
at net.snowflake.client.core.SecureStorageAppleManager$SecurityLibManager$ResourceHolder.<clinit>(SecureStorageAppleManager.java:191)
at net.snowflake.client.core.SecureStorageAppleManager$SecurityLibManager.getInstance(SecureStorageAppleManager.java:196)
at net.snowflake.client.core.SecureStorageAppleManager.<init>(SecureStorageAppleManager.java:21)
at net.snowflake.client.core.SecureStorageAppleManager.builder(SecureStorageAppleManager.java:25)
at net.snowflake.client.core.CredentialManager.initSecureStorageManager(CredentialManager.java:26)
at net.snowflake.client.core.CredentialManager.<init>(CredentialManager.java:20)
at net.snowflake.client.core.CredentialManager.<init>(CredentialManager.java:11)
at net.snowflake.client.core.CredentialManager$CredentialManagerHolder.<clinit>(CredentialManager.java:56)
at net.snowflake.client.core.CredentialManager.getInstance(CredentialManager.java:60)
at net.snowflake.client.core.SessionUtil.preNewSession(SessionUtil.java:301)
at net.snowflake.client.core.SessionUtil.openSession(SessionUtil.java:288)
at net.snowflake.client.core.SFSession.open(SFSession.java:477)
at net.snowflake.client.jdbc.DefaultSFConnectionHandler.initialize(DefaultSFConnectionHandler.java:104)
at net.snowflake.client.jdbc.DefaultSFConnectionHandler.initializeConnection(DefaultSFConnectionHandler.java:79)
at net.snowflake.client.jdbc.SnowflakeConnectionV1.initConnectionWithImpl(SnowflakeConnectionV1.java:116)
at net.snowflake.client.jdbc.SnowflakeConnectionV1.<init>(SnowflakeConnectionV1.java:96)
at net.snowflake.client.jdbc.SnowflakeDriver.connect(SnowflakeDriver.java:180)
at org.flywaydb.core.internal.jdbc.DriverDataSource.getConnectionFromDriver(DriverDataSource.java:258)
at org.flywaydb.core.internal.jdbc.DriverDataSource.getConnection(DriverDataSource.java:223)
at org.flywaydb.core.api.configuration.ClassicConfiguration.setDataSource(ClassicConfiguration.java:1078)
at org.flywaydb.core.api.configuration.ClassicConfiguration.configure(ClassicConfiguration.java:1660)
at org.flywaydb.core.api.configuration.FluentConfiguration.configuration(FluentConfiguration.java:914)
at org.flywaydb.commandline.configuration.LegacyConfigurationManager.getConfiguration(LegacyConfigurationManager.java:91)
at org.flywaydb.commandline.configuration.ConfigurationManagerImpl.getConfiguration(ConfigurationManagerImpl.java:41)
at org.flywaydb.commandline.Main.main(Main.java:100)
-------------------------------------------------------------------------
Thanks
Deepika
Answers
Thank you for your forum post.
Can you please confirm the version of Flyway you are attempting to use?
Many Thanks
Eddie
Senior Product Support Engineer
Redgate Software Ltd
Email: support@red-gate.com
I have installed flyway from https://www.red-gate.com/products/flyway/community/download/ and was getting the error. Managed to install "flyway-commandline-9.20.1-macosx-x64" and updated java version to - macOS x64 DMG Installer and got the error sorted out.. We can close this ticket as solved
Thanks
Deepika