SysML-v2-API-Services icon indicating copy to clipboard operation
SysML-v2-API-Services copied to clipboard

error java.lang.UnsatisfiedLinkError with sbt run

Open dglb opened this issue 1 year ago • 3 comments
trafficstars

Hi, I try to run SysML-v2-API-Services on macOS 12.6.6. When I launch "sbt run" I get this error [error] java.lang.UnsatisfiedLinkError: Can't load library: /var/folders/9f/28dwy9js4w1987vm3m44kzrm0000gn/T/jna--1748781543/jna16131927230977261316.tmp

Can you help me ?

Thank you.

sbt is install with SDKMAN.

It's working on Debian 12.6 (bookworm).

dglb avatar Aug 16 '24 16:08 dglb

I am currently having the same problem. Currently on macOS 14.2.1. I navigated into that folder and that last .tmp file is never there.

Sbt was installed with SDKMAN as well.

EliZavalaGH avatar Sep 25 '24 21:09 EliZavalaGH

I ran into this issue as well, running macOS 14.7. I managed to get around it by following this Stackoverflow thread. Basically, it boils down that the version of a JNA jar file that is provided in sbt 1.2.8 isn't compatible with the the M1 architecture (aarch64).

My sbt was installed with Homebrew, though I'm not sure if that will matter.

Anyway, this should fix the problem:

  • Go to the Maven repository for JNA and download jna-5.8.0.jar.
  • Navigate to ~/.sbt/boot/scala-2.12.7/org.scala-sbt/sbt/1.2.8 and move jna-4.5.0.jar to another location (just in case it doesn't work, you can revert it back)
  • Copy jna-5.8.0.jar into the 1.2.8 folder
  • Re-run sbt clean and sbt run

There wasn't much thought put into the versions, so maybe there is some nuance I'm missing that someone more knowledgable than me can correct, but getting jna-5.8.0.jar worked for me. I also arrived at this fix in a very roundabout way, so if this doesn't work, let me know and I can walk through the exact steps I performed.

kewgt avatar Nov 15 '24 18:11 kewgt

I was having the same issue, on MacOS, and this fixed it. Thank you for sharing 👍

macroteck avatar Mar 28 '25 14:03 macroteck