terl / lazysodium-java

A Java implementation of the Libsodium crypto library. For the lazy dev.
https://github.com/terl/lazysodium-java/wiki
Mozilla Public License 2.0
134 stars 46 forks source link

Lazysodium 5.1.4 - : Unable to load library libsodium.so on Mac M1 - not a mach-o file #132

Open wsieb opened 7 months ago

wsieb commented 7 months ago

I try to use lazysodium-java in our tests on a M1 mac (running MacOS Sonoma), the loading of the library within the jar file is resulting in the following error:

java.lang.UnsatisfiedLinkError: Unable to load library '/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so': dlopen(/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so, 0x0009): tried: '/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so' (not a mach-o file), '/System/Volumes/Preboot/Cryptexes/OS/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so' (no such file), '/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so' (not a mach-o file), '/private/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so' (not a mach-o file), '/System/Volumes/Preboot/Cryptexes/OS/private/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so' (no such file), '/private/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so' (not a mach-o file) dlopen(/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so, 0x0009): tried: '/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so' (not a mach-o file), '/System/Volumes/Preboot/Cryptexes/OS/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so' (no such file), '/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so' (not a mach-o file), '/private/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so' (not a mach-o file), '/System/Volumes/Preboot/Cryptexes/OS/private/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so' (no such file), '/private/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so' (not a mach-o file) dlopen(/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so.framework/libsodium.so, 0x0009): tried: '/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so.framework/libsodium.so' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so.framework/libsodium.so' (no such file), '/var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so.framework/libsodium.so' (no such file), '/System/Library/Frameworks/libsodium.so.framework/libsodium.so' (no such file, not in dyld cache) Native library (var/folders/77/7bqgp4f91474s2cvxn_v5grh0000gn/T/resource-loader2154935235071792269/armv6/libsodium.so) not found in resource path (/Users/user1/Dokumente/Repos/company/project_testautomation_specs/project_backend/ps_be_latest/target/classes:/Users/user1/Dokumente/Repos/company/project_testautomation_specs/project_backend/ps_be_core/target/classes:/Users/user1/.m2/repository/org/apache/commons/commons-lang3/3.11/commons-lang3-3.11.jar:/Users/user1/.m2/repository/com/teststeps/thekla4j-assertions/2.4.0/thekla4j-assertions-2.4.0.jar:/Users/user1/.m2/repository/org/hamcrest/hamcrest-all/1.3/hamcrest-all-1.3.jar:/Users/user1/.m2/repository/org/apache/maven/surefire/surefire-junit4/3.0.0-M5/surefire-junit4-3.0.0-M5.jar:/Users/user1/.m2/repository/org/apache/maven/surefire/common-junit4/3.0.0-M5/common-junit4-3.0.0-M5.jar:/Users/user1/.m2/repository/org/apache/maven/surefire/common-junit3/3.0.0-M5/common-junit3-3.0.0-M5.jar:/Users/user1/.m2/repository/org/apache/maven/surefire/common-java5/3.0.0-M5/common-java5-3.0.0-M5.jar:/Users/user1/.m2/repository/org/apache/maven/surefire/surefire-api/3.0.0-M5/surefire-api-3.0.0-M5.jar:/Users/user1/.m2/repository/org/apache/maven/surefire/surefire-logger-api/3.0.0-M5/surefire-logger-api-3.0.0-M5.jar:/Users/user1/.m2/repository/org/apache/maven/surefire/surefire-shared-utils/3.0.0-M4/surefire-shared-utils-3.0.0-M4.jar:/Users/user1/.m2/repository/io/vavr/vavr/1.0.0-alpha-4/vavr-1.0.0-alpha-4.jar:/Users/user1/.m2/repository/org/apache/logging/log4j/log4j-api/2.17.2/log4j-api-2.17.2.jar:/Users/user1/.m2/repository/org/freemarker/freemarker/2.3.32/freemarker-2.3.32.jar:/Users/user1/.m2/repository/com/teststeps/thekla4j-core/2.4.0/thekla4j-core-2.4.0.jar:/Users/user1/.m2/repository/com/teststeps/thekla4j-database/2.4.0/thekla4j-database-2.4.0.jar:/Users/user1/.m2/repository/org/postgresql/postgresql/42.4.1/postgresql-42.4.1.jar:/Users/user1/.m2/repository/org/checkerframework/checker-qual/3.5.0/checker-qual-3.5.0.jar:/Users/user1/.m2/repository/com/teststeps/thekla4j-http/2.4.0/thekla4j-http-2.4.0.jar:/Users/user1/.m2/repository/com/teststeps/thekla4j-messagequeue/2.4.0/thekla4j-messagequeue-2.4.0.jar:/Users/user1/.m2/repository/com/teststeps/thekla4j-utils/2.4.0/thekla4j-utils-2.4.0.jar:/Users/user1/.m2/repository/com/teststeps/thekla4j-activityLog/2.4.0/thekla4j-activityLog-2.4.0.jar:/Users/user1/.m2/repository/net/java/dev/jna/jna/5.14.0/jna-5.14.0.jar:/Users/user1/.m2/repository/com/goterl/lazysodium-java/5.1.4/lazysodium-java-5.1.4.jar:/Users/user1/.m2/repository/org/slf4j/slf4j-api/2.0.3/slf4j-api-2.0.3.jar:/Users/user1/.m2/repository/com/goterl/resource-loader/2.0.2/resource-loader-2.0.2.jar:/Users/user1/.m2/repository/io/jsonwebtoken/jjwt-api/0.11.5/jjwt-api-0.11.5.jar:/Users/user1/.m2/repository/io/jsonwebtoken/jjwt-impl/0.11.5/jjwt-impl-0.11.5.jar:/Users/user1/.m2/repository/io/jsonwebtoken/jjwt-jackson/0.11.5/jjwt-jackson-0.11.5.jar:/Users/user1/.m2/repository/io/jsonwebtoken/jjwt/0.9.1/jjwt-0.9.1.jar:/Users/user1/.m2/repository/javax/json/javax.json-api/1.1.4/javax.json-api-1.1.4.jar:/Users/user1/.m2/repository/org/json/json/20220320/json-20220320.jar:/Users/user1/.m2/repository/com/google/code/gson/gson/2.9.0/gson-2.9.0.jar:/Users/user1/.m2/repository/com/oracle/weblogic/wlthint3client/12.2.1-3-0/wlthint3client-12.2.1-3-0.jar:/Users/user1/.m2/repository/javax/xml/bind/jaxb-api/2.4.0-b180830.0359/jaxb-api-2.4.0-b180830.0359.jar:/Users/user1/.m2/repository/javax/activation/javax.activation-api/1.2.0/javax.activation-api-1.2.0.jar:/Users/user1/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.13.3/jackson-databind-2.13.3.jar:/Users/user1/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.13.3/jackson-annotations-2.13.3.jar:/Users/user1/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.13.3/jackson-core-2.13.3.jar:/Users/user1/.m2/repository/com/fasterxml/jackson/dataformat/jackson-dataformat-xml/2.14.2/jackson-dataformat-xml-2.14.2.jar:/Users/user1/.m2/repository/org/codehaus/woodstox/stax2-api/4.2.1/stax2-api-4.2.1.jar:/Users/user1/.m2/repository/com/fasterxml/woodstox/woodstox-core/6.5.0/woodstox-core-6.5.0.jar:/Users/user1/.m2/repository/org/glassfish/jaxb/jaxb-runtime/3.0.2/jaxb-runtime-3.0.2.jar:/Users/user1/.m2/repository/com/sun/activation/jakarta.activation/2.0.1/jakarta.activation-2.0.1.jar:/Users/user1/.m2/repository/org/glassfish/jaxb/jaxb-core/3.0.2/jaxb-core-3.0.2.jar:/Users/user1/.m2/repository/org/glassfish/jaxb/txw2/3.0.2/txw2-3.0.2.jar:/Users/user1/.m2/repository/com/sun/istack/istack-commons-runtime/4.0.1/istack-commons-runtime-4.0.1.jar:/Users/user1/.m2/repository/de/project/intsyst/project-testservice-ejb3/35.0-SNAPSHOT/project-testservice-ejb3-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/de/project/intsyst/project-messageservice-base/35.0-SNAPSHOT/project-messageservice-base-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/de/project/intsyst/project-jmsprovider/35.0-SNAPSHOT/project-jmsprovider-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/de/project/intsyst/project-jmsutil/35.0-SNAPSHOT/project-jmsutil-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/org/apache/commons/commons-configuration2/2.8.0/commons-configuration2-2.8.0.jar:/Users/user1/.m2/repository/commons-logging/commons-logging/1.2/commons-logging-1.2.jar:/Users/user1/.m2/repository/commons-beanutils/commons-beanutils/1.9.4/commons-beanutils-1.9.4.jar:/Users/user1/.m2/repository/de/project/intsyst/project-ibm-provider/35.0-SNAPSHOT/project-ibm-provider-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/de/project/intsyst/project-parcel-ejb3/35.0-SNAPSHOT/project-parcel-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/org/apache/commons/commons-text/1.10.0/commons-text-1.10.0.jar:/Users/user1/.m2/repository/de/project/intsyst/project-crypt/35.0-SNAPSHOT/project-crypt-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/de/project/intsyst/project-configservice-ejb3/35.0-SNAPSHOT/project-configservice-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/project-configservice-common/35.0-SNAPSHOT/project-configservice-common-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/de/project/intsyst/project-eventservice-ejb3/35.0-SNAPSHOT/project-eventservice-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/project-eventservice-base/35.0-SNAPSHOT/project-eventservice-base-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/de/project/intsyst/project-businesseventlog-ejb3/35.0-SNAPSHOT/project-businesseventlog-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/project-admmgmt-ejb3/35.0-SNAPSHOT/project-admmgmt-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/project-location-ejb3/35.0-SNAPSHOT/project-location-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/project-product-ejb/35.0-SNAPSHOT/project-product-ejb-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/common-web/35.0-SNAPSHOT/common-web-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/org/apache/struts/struts2-core/2.5.31/struts2-core-2.5.31.jar:/Users/user1/.m2/repository/ognl/ognl/3.1.29/ognl-3.1.29.jar:/Users/user1/.m2/repository/org/javassist/javassist/3.20.0-GA/javassist-3.20.0-GA.jar:/Users/user1/.m2/repository/commons-fileupload/commons-fileupload/1.4/commons-fileupload-1.4.jar:/Users/user1/.m2/repository/de/project/intsyst/project-jaxb/35.0-SNAPSHOT/project-jaxb-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/de/project/check-identcode/check-identcode/1.0/check-identcode-1.0.jar:/Users/user1/.m2/repository/de/project/intsyst/circuitbreaker/35.0-SNAPSHOT/circuitbreaker-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/commons-net/commons-net/3.9.0/commons-net-3.9.0.jar:/Users/user1/.m2/repository/de/project/intsyst/project-notificationservice-ejb3/35.0-SNAPSHOT/project-notificationservice-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/project-emailservice-common/35.0-SNAPSHOT/project-emailservice-common-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/de/project/intsyst/project-facade-ejb3/35.0-SNAPSHOT/project-facade-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/testutil/35.0-SNAPSHOT/testutil-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/de/project/intsyst/project-messageservice-rmi-ejb3/35.0-SNAPSHOT/project-messageservice-rmi-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/project-adm-4-0-driver-ejb3/35.0-SNAPSHOT/project-adm-4-0-driver-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/project-adm-4-1-driver-ejb3/35.0-SNAPSHOT/project-adm-4-1-driver-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/project-adm-4-2-driver-ejb3/35.0-SNAPSHOT/project-adm-4-2-driver-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/project-adm-4-3-driver-ejb3/35.0-SNAPSHOT/project-adm-4-3-driver-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/project-adm-4-4-driver-ejb3/35.0-SNAPSHOT/project-adm-4-4-driver-ejb3-35.0-20231020.115426-186-client.jar:/Users/user/.m2/repository/de/project/intsyst/project-adm-4-5-driver-ejb3/35.0-SNAPSHOT/project-adm-4-5-driver-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/net/sf/saxon/saxon-pe/9.8.0.8/saxon-pe-9.8.0.8.jar:/Users/user1/.m2/repository/net/sf/saxon/saxon-pe-sql/9.8.0.8/saxon-pe-sql-9.8.0.8.jar:/Users/user1/.m2/repository/com/ibm/mq/org.json/9.3.0.5/org.json-9.3.0.5.jar:/Users/user1/.m2/repository/com/jcraft/jsch/0.1.55/jsch-0.1.55.jar:/Users/user1/.m2/repository/de/project/intsyst/project-common/35.0-SNAPSHOT/project-common-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/de/project/intsyst/project-validation/35.0-SNAPSHOT/project-validation-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/commons-validator/commons-validator/1.7/commons-validator-1.7.jar:/Users/user1/.m2/repository/commons-digester/commons-digester/2.1/commons-digester-2.1.jar:/Users/user1/.m2/repository/de/project/intsyst/project-userservice-ejb3/35.0-SNAPSHOT/project-userservice-ejb3-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/de/project/intsyst/project-cryptosodium-ejb3/35.0-SNAPSHOT/project-cryptosodium-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/com/goterl/lazycode/lazysodium-java/4.3.4/lazysodium-java-4.3.4.jar:/Users/user1/.m2/repository/co/libly/resource-loader/1.3.10/resource-loader-1.3.10.jar:/Users/user1/.m2/repository/de/project/intsyst/project-authenticity-ejb3/35.0-SNAPSHOT/project-authenticity-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/com/squareup/okhttp3/okhttp/4.10.0/okhttp-4.10.0.jar:/Users/user1/.m2/repository/org/jetbrains/kotlin/kotlin-stdlib/1.6.20/kotlin-stdlib-1.6.20.jar:/Users/user1/.m2/repository/org/jetbrains/annotations/13.0/annotations-13.0.jar:/Users/user1/.m2/repository/com/squareup/okio/okio-jvm/3.1.0/okio-jvm-3.1.0.jar:/Users/user1/.m2/repository/org/jetbrains/kotlin/kotlin-stdlib-common/1.6.20/kotlin-stdlib-common-1.6.20.jar:/Users/user1/.m2/repository/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.6.20/kotlin-stdlib-jdk8-1.6.20.jar:/Users/user1/.m2/repository/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.6.20/kotlin-stdlib-jdk7-1.6.20.jar:/Users/user1/.m2/repository/commons-io/commons-io/2.7/commons-io-2.7.jar:/Users/user1/.m2/repository/commons-codec/commons-codec/1.14/commons-codec-1.14.jar:/Users/user1/.m2/repository/javax/jws/jsr181-api/1.0-MR1/jsr181-api-1.0-MR1.jar:/Users/user1/.m2/repository/de/project/intsyst/project-facade-ejb3/35.0-SNAPSHOT/project-facade-ejb3-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/de/project/intsyst/project-userservice-ejb3/35.0-SNAPSHOT/project-userservice-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/project-lettershop-ejb3/35.0-SNAPSHOT/project-lettershop-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/project-process-ejb3/35.0-SNAPSHOT/project-process-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/project-tpapi-service-ejb3/35.0-SNAPSHOT/project-tpapi-service-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/project-message-ejb3/35.0-SNAPSHOT/project-message-ejb3-35.0-20231020.115426-186-client.jar:/Users/user1/.m2/repository/de/project/intsyst/project-tpapi-protocol-v20/35.0-SNAPSHOT/project-tpapi-protocol-v20-35.0-20231020.115426-186.jar:/Users/user1/.m2/repository/com/github/skjolber/3d-bin-container-packing/core/1.2.14/core-1.2.14.jar:/Users/user1/.m2/repository/de/project/registeredMail/1.0/registeredMail-1.0.jar:/Users/user1/.m2/repository/org/projectlombok/lombok/1.18.10/lombok-1.18.10.jar:/Users/user1/.m2/repository/javax/persistence/javax.persistence-api/2.2/javax.persistence-api-2.2.jar:/Users/user1/.m2/repository/com/oracle/jdbc/ojdbc8/12.2.0.1/ojdbc8-12.2.0.1.jar:/Users/user1/.m2/repository/com/ibm/mq/jms/8.0.0.11/jms-8.0.0.11.jar:/Users/user1/.m2/repository/com/ibm/mq/com.ibm.mqjms/8.0.0.11/com.ibm.mqjms-8.0.0.11.jar:/Users/user1/.m2/repository/com/ibm/mq/com.ibm.mq.pcf/8.0.0.11/com.ibm.mq.pcf-8.0.0.11.jar:/Users/user1/.m2/repository/com/ibm/mq/com.ibm.mq.jmqi/8.0.0.11/com.ibm.mq.jmqi-8.0.0.11.jar:/Users/user1/.m2/repository/com/ibm/mq/com.ibm.mq.headers/8.0.0.11/com.ibm.mq.headers-8.0.0.11.jar:/Users/user1/.m2/repository/com/ibm/mq/com.ibm.mq.connector/8.0.0.11/com.ibm.mq.connector-8.0.0.11.jar:/Users/user1/.m2/repository/com/ibm/mq/com.ibm.mq.allclient/8.0.0.11/com.ibm.mq.allclient-8.0.0.11.jar:/Users/user1/.m2/repository/com/ibm/mq/com.ibm.mq.traceControl/8.0.0.11/com.ibm.mq.traceControl-8.0.0.11.jar:/Users/user1/.m2/repository/com/ibm/mq/com.ibm.mq/8.0.0.11/com.ibm.mq-8.0.0.11.jar:/Users/user1/.m2/repository/com/ibm/mq/providerutil/8.0.0.11/providerutil-8.0.0.11.jar:/Users/user1/.m2/repository/com/ibm/mq/fscontext/8.0.0.11/fscontext-8.0.0.11.jar:/Users/user1/.m2/repository/org/eclipse/persistence/eclipselink/3.0.2/eclipselink-3.0.2.jar:/Users/user1/.m2/repository/io/cucumber/cucumber-java/7.2.3/cucumber-java-7.2.3.jar:/Users/user1/.m2/repository/io/cucumber/cucumber-core/7.2.3/cucumber-core-7.2.3.jar:/Users/user1/.m2/repository/io/cucumber/cucumber-gherkin/7.2.3/cucumber-gherkin-7.2.3.jar:/Users/user1/.m2/repository/io/cucumber/cucumber-gherkin-messages/7.2.3/cucumber-gherkin-messages-7.2.3.jar:/Users/user1/.m2/repository/io/cucumber/messages/17.1.1/messages-17.1.1.jar:/Users/user1/.m2/repository/io/cucumber/tag-expressions/4.1.0/tag-expressions-4.1.0.jar:/Users/user1/.m2/repository/io/cucumber/cucumber-expressions/15.0.1/cucumber-expressions-15.0.1.jar:/Users/user1/.m2/repository/io/cucumber/datatable/7.2.3/datatable-7.2.3.jar:/Users/user1/.m2/repository/io/cucumber/cucumber-plugin/7.2.3/cucumber-plugin-7.2.3.jar:/Users/user1/.m2/repository/io/cucumber/docstring/7.2.3/docstring-7.2.3.jar:/Users/user1/.m2/repository/io/cucumber/html-formatter/17.0.0/html-formatter-17.0.0.jar:/Users/user1/.m2/repository/io/cucumber/ci-environment/8.1.0/ci-environment-8.1.0.jar:/Users/user1/.m2/repository/org/apiguardian/apiguardian-api/1.1.2/apiguardian-api-1.1.2.jar:/Users/user1/.m2/repository/io/cucumber/cucumber-junit/7.2.3/cucumber-junit-7.2.3.jar:/Users/user1/.m2/repository/junit/junit/4.13.2/junit-4.13.2.jar:/Users/user1/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/Users/user1/.m2/repository/io/cucumber/cucumber-picocontainer/7.2.3/cucumber-picocontainer-7.2.3.jar:/Users/user1/.m2/repository/org/picocontainer/picocontainer/2.15/picocontainer-2.15.jar:/Users/user1/.m2/repository/me/jvt/cucumber/reporting-plugin/7.2.0/reporting-plugin-7.2.0.jar:/Users/user1/.m2/repository/io/cucumber/gherkin/22.0.0/gherkin-22.0.0.jar:/Users/user1/.m2/repository/net/masterthought/cucumber-reporting/5.6.1/cucumber-reporting-5.6.1.jar:/Users/user1/.m2/repository/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.12.1/jackson-datatype-jsr310-2.12.1.jar:/Users/user1/.m2/repository/org/apache/velocity/velocity-engine-core/2.3/velocity-engine-core-2.3.jar:/Users/user1/.m2/repository/commons-collections/commons-collections/3.2.2/commons-collections-3.2.2.jar:/Users/user1/.m2/repository/joda-time/joda-time/2.10.10/joda-time-2.10.10.jar:/Users/user1/.m2/repository/org/codehaus/plexus/plexus-utils/3.3.0/plexus-utils-3.3.0.jar:/Users/user1/.m2/repository/org/jsoup/jsoup/1.14.2/jsoup-1.14.2.jar:/Users/user1/.m2/repository/com/google/guava/guava/30.1.1-jre/guava-30.1.1-jre.jar:/Users/user1/.m2/repository/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar:/Users/user1/.m2/repository/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar:/Users/user1/.m2/repository/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar:/Users/user1/.m2/repository/com/google/errorprone/error_prone_annotations/2.5.1/error_prone_annotations-2.5.1.jar:/Users/user1/.m2/repository/com/google/j2objc/j2objc-annotations/1.3/j2objc-annotations-1.3.jar:/Users/user1/.m2/repository/com/googlecode/owasp-java-html-sanitizer/owasp-java-html-sanitizer/20211018.2/owasp-java-html-sanitizer-20211018.2.jar:/Users/user1/.m2/repository/commons-configuration/commons-configuration/1.10/commons-configuration-1.10.jar:/Users/user1/.m2/repository/commons-lang/commons-lang/2.6/commons-lang-2.6.jar:/Users/user1/.m2/repository/com/sun/xml/bind/jaxb-impl/2.3.3/jaxb-impl-2.3.3.jar:/Users/user1/.m2/repository/jakarta/xml/bind/jakarta.xml.bind-api/2.3.3/jakarta.xml.bind-api-2.3.3.jar:/Users/user1/.m2/repository/org/aspectj/aspectjweaver/1.8.10/aspectjweaver-1.8.10.jar:/Users/user1/.m2/repository/io/qameta/allure/allure-cucumber7-jvm/2.17.3/allure-cucumber7-jvm-2.17.3.jar:/Users/user1/.m2/repository/io/qameta/allure/allure-java-commons/2.17.3/allure-java-commons-2.17.3.jar:/Users/user1/.m2/repository/io/qameta/allure/allure-model/2.17.3/allure-model-2.17.3.jar:/Users/user1/.m2/repository/org/hamcrest/java-hamcrest/2.0.0.0/java-hamcrest-2.0.0.0.jar:/Users/user1/.m2/repository/org/apache/logging/log4j/log4j-core/2.17.2/log4j-core-2.17.2.jar:/Applications/IntelliJ IDEA.app/Contents/plugins/junit/lib/junit-rt.jar:/Applications/IntelliJ IDEA.app/Contents/plugins/cucumber-java/lib/cucumber-jvmFormatter.jar:/Applications/IntelliJ IDEA.app/Contents/plugins/cucumber-java/lib/cucumber-jvmFormatter5.jar:/Applications/IntelliJ IDEA.app/Contents/plugins/cucumber-java/lib/cucumber-jvmFormatter4.jar:/Applications/IntelliJ IDEA.app/Contents/plugins/cucumber-java/lib/cucumber-jvmFormatter3.jar) at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:325) at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:481) at com.sun.jna.Native.register(Native.java:1770) at co.libly.resourceloader.SharedLibraryLoader.registerLibraryWithClasses(SharedLibraryLoader.java:81) at co.libly.resourceloader.SharedLibraryLoader.load(SharedLibraryLoader.java:58) at com.goterl.lazycode.lazysodium.utils.LibraryLoader.loadBundledLibrary(LibraryLoader.java:133) at com.goterl.lazycode.lazysodium.utils.LibraryLoader.loadLibrary(LibraryLoader.java:94) at com.goterl.lazycode.lazysodium.SodiumJava.(SodiumJava.java:34) at com.goterl.lazycode.lazysodium.SodiumJava.(SodiumJava.java:23) at de.dpcompany.project.testautomation.core.util.SodiumEncryptionUtils.lambda$static$81480bed$1(SodiumEncryptionUtils.java:27) at io.vavr.control.Try.of(Try.java:83) at de.dpcompany.project.testautomation.core.util.SodiumEncryptionUtils.lambda$static$5ca62b93$1(SodiumEncryptionUtils.java:26) at de.dpcompany.project.testautomation.core.util.SodiumEncryptionUtils.lambda$static$f2c01f36$1(SodiumEncryptionUtils.java:39)

tansly commented 7 months ago

Hi there, I get a similar error. A little bit different though:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGILL (0x4) at pc=0x0000000157b82790, pid=68481, tid=36099
#
# JRE version: OpenJDK Runtime Environment Corretto-11.0.21.9.1 (11.0.21+9) (build 11.0.21+9-LTS)
# Java VM: OpenJDK 64-Bit Server VM Corretto-11.0.21.9.1 (11.0.21+9-LTS, mixed mode, tiered, compressed oops, g1 gc, bsd-amd64)
# Problematic frame:
# C  [libsodium.dylib+0x1c790]  _sodium_runtime_get_cpu_features+0x40
#
# No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# If you would like to submit a bug report, please visit:
#   https://github.com/corretto/corretto-11/issues/
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
---------------  T H R E A D  ---------------

Current thread (0x00007fb794145000):  JavaThread "restartedMain" [_thread_in_native, id=36099, stack(0x000000030f646000,0x000000030f746000)]

Stack: [0x000000030f646000,0x000000030f746000],  sp=0x000000030f743408,  free space=1013k
Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [libsodium.dylib+0x1c790]  _sodium_runtime_get_cpu_features+0x40

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  com.goterl.lazysodium.Sodium.sodium_init()I+0
j  com.goterl.lazysodium.Sodium.onRegistered()V+1
j  com.goterl.lazysodium.SodiumJava.<init>(Lcom/goterl/lazysodium/utils/LibraryLoader$Mode;)V+21
j  com.goterl.lazysodium.SodiumJava.<init>()V+4
...

The rest of the stack trace points to our internal code and Spring Boot dependencies, so I omitted them. Let me know if anyone needs more context.

What caught my attention is also this register dump:

siginfo: si_signo: 4 (SIGILL), si_code: 1 (ILL_ILLOPC), si_addr: 0x0000000157b82790

Register to memory mapping:

RAX=0x00000000000206c0 is an unknown value
RBX=0xffffffffffffff20 is an unknown value
RCX=0x0000000000000001 is an unknown value
RDX=0x0000000000000001 is an unknown value
RSP=0x000000030f743408 is pointing into the stack for thread: 0x00007fb794145000
RBP=0x000000030f743420 is pointing into the stack for thread: 0x00007fb794145000
RSI=0x0 is NULL
RDI=0x0000000000010800 is an unknown value
R8 =0x000000030f743520 is pointing into the stack for thread: 0x00007fb794145000
R9 =0x000000030f743338 is pointing into the stack for thread: 0x00007fb794145000
R10=0x0 is NULL
R11=0x0000000157b82870: sodium_init+0 in /private/var/folders/pd/7y9y2c293nn8wmdnnmyn9r7m0000gp/T/resource-loader9314449528000403178/mac/intel/libsodium.dylib at 0x0000000157b66000
R12=0x0000600002e628b0 points into unknown readable memory: 0x0000000157abb018 | 18 b0 ab 57 01 00 00 00
R13=0x0000600001fc7600 points into unknown readable memory: 0x0000000000000002 | 02 00 00 00 00 00 00 00
R14=0x000000030f743d80 is pointing into the stack for thread: 0x00007fb794145000
R15=0x000000030f743f10 is pointing into the stack for thread: 0x00007fb794145000

Registers:
RAX=0x00000000000206c0, RBX=0xffffffffffffff20, RCX=0x0000000000000001, RDX=0x0000000000000001
RSP=0x000000030f743408, RBP=0x000000030f743420, RSI=0x0000000000000000, RDI=0x0000000000010800
R8 =0x000000030f743520, R9 =0x000000030f743338, R10=0x0000000000000000, R11=0x0000000157b82870
R12=0x0000600002e628b0, R13=0x0000600001fc7600, R14=0x000000030f743d80, R15=0x000000030f743f10
RIP=0x0000000157b82790, EFLAGS=0x0000000000000202, ERR=0x0000000000000000
  TRAPNO=0x0000000000000006

Specifically, R11 points to sodium_init, but the referenced dynamic library is under mac/intel. Which could explain the SIGILL.

Also this:

Dynamic libraries:
... (omitted the irrelevant libraries)
0x0000000157b66000  /private/var/folders/pd/7y9y2c293nn8wmdnnmyn9r7m0000gp/T/resource-loader9314449528000403178/mac/intel/libsodium.dylib

Again, libsodium.dylib is loaded from /mac/intel.

tansly commented 7 months ago

Hmm, an interesting finding: I was using corretto-11 (11.0.21) as my project JDK. I've changed it to temurin-11 (11.0.21) and it worked without any errors.

@wsieb what JDK are you using here?

tansly commented 7 months ago

Interesting, maybe my problem is really different. I've removed the existing corretto SDK from my project and told IDEA to download again (the exact same version). Now it works without any errors. @wsieb maybe you can try to do something similar and see if it works. Until then, I'm out in order to not make any more noise 😃

wsieb commented 6 months ago

Hi @tansly, thank you for your help. The switch to temurin-11 was the key (but not the aarch64 version)