启动play项目时出现java.lang.UnsatisfiedLinkError

发布于 2025-01-09 19:43:02 字数 4012 浏览 3 评论 0原文

我尝试在 M1 上的 IntelliJ IDEA Ultimate MacBook Pro 中启动一个正在运行的项目,我在控制台中收到以下错误:

[错误] java.lang.UnsatisfiedLinkError: /用户/用户名/库/缓存/JNA/temp/jna2878211531869408345.tmp: dlopen(/用户/用户名/库/缓存/JNA/temp/jna2878211531869408345.tmp, 0x0001):尝试过: '/用户/用户名/库/缓存/JNA/temp/jna2878211531869408345.tmp' (胖文件,但缺少兼容的体系结构(有“i386,x86_64”, 需要 'arm64e')), '/usr/lib/jna2878211531869408345.tmp' (没有这样的文件)

我尝试在删除所有JDK后在arm架构上重新安装JDK,但没有帮助

需要欺骗什么来解决这个问题?

完整的堆栈跟踪:

[error] java.lang.UnsatisfiedLinkError: /Users/romangoltsov/Library/Caches/JNA/temp/jna2878211531869408345.tmp: dlopen(/Users/romangoltsov/Library/Caches/JNA/temp/jna2878211531869408345.tmp, 0x0001): tried: '/Users/romangoltsov/Library/Caches/JNA/temp/jna2878211531869408345.tmp' (fat file, but missing compatible architecture (have 'i386,x86_64', need 'arm64e')), '/usr/lib/jna2878211531869408345.tmp' (no such file)
    [error]     at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)
    [error]     at java.base/java.lang.ClassLoader$NativeLibrary.load(ClassLoader.java:2442)
    [error]     at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(ClassLoader.java:2498)
    [error]     at java.base/java.lang.ClassLoader.loadLibrary0(ClassLoader.java:2694)
    [error]     at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2627)
    [error]     at java.base/java.lang.Runtime.load0(Runtime.java:768)
    [error]     at java.base/java.lang.System.load(System.java:1837)
    [error]     at com.sun.jna.Native.loadNativeDispatchLibraryFromClasspath(Native.java:1018)
    [error]     at com.sun.jna.Native.loadNativeDispatchLibrary(Native.java:988)
    [error]     at com.sun.jna.Native.<clinit>(Native.java:195)
    [error]     at io.methvin.watchservice.jna.CarbonAPI.<clinit>(CarbonAPI.java:19)
    [error]     at io.methvin.watchservice.jna.CFStringRef.toCFString(CFStringRef.java:23)
    [error]     at io.methvin.watchservice.MacOSXListeningWatchService.register(MacOSXListeningWatchService.java:101)
    [error]     at io.methvin.watchservice.WatchablePath.register(WatchablePath.java:50)
    [error]     at io.methvin.watcher.DirectoryWatcher.register(DirectoryWatcher.java:352)
    [error]     at io.methvin.watcher.DirectoryWatcher.registerAll(DirectoryWatcher.java:317)
    [error]     at io.methvin.watcher.DirectoryWatcher.<init>(DirectoryWatcher.java:167)
    [error]     at io.methvin.watcher.DirectoryWatcher$Builder.build(DirectoryWatcher.java:118)
    [error]     at play.dev.filewatch.DefaultFileWatchService.watch(DefaultFileWatchService.scala:38)
    [error]     at play.dev.filewatch.FileWatchService$$anon$1.watch(FileWatchService.scala:87)
    [error]     at play.runsupport.Reloader.<init>(Reloader.scala:414)
    [error]     at play.runsupport.Reloader$.reloader$lzycompute$1(Reloader.scala:259)
    [error]     at play.runsupport.Reloader$.play$runsupport$Reloader$$reloader$1(Reloader.scala:251)
    [error]     at play.runsupport.Reloader$.startDevMode(Reloader.scala:271)
    [error]     at play.sbt.run.PlayRun$.devModeServer$lzycompute$1(PlayRun.scala:99)
    [error]     at play.sbt.run.PlayRun$.devModeServer$1(PlayRun.scala:83)
    [error]     at play.sbt.run.PlayRun$.$anonfun$playRunTask$3(PlayRun.scala:106)
    [error]     at play.sbt.run.PlayRun$.$anonfun$playRunTask$3$adapted(PlayRun.scala:68)
    [error]     at scala.Function1.$anonfun$compose$1(Function1.scala:49)
    [error] stack trace is suppressed; run 'last Compile / run' for the full output
    [error] (Compile / run) java.lang.UnsatisfiedLinkError: /Users/romangoltsov/Library/Caches/JNA/temp/jna2878211531869408345.tmp: dlopen(/Users/romangoltsov/Library/Caches/JNA/temp/jna2878211531869408345.tmp, 0x0001): tried: '/Users/romangoltsov/Library/Caches/JNA/temp/jna2878211531869408345.tmp' (fat file, but missing compatible architecture (have 'i386,x86_64', need 'arm64e')), '/usr/lib/jna2878211531869408345.tmp' (no such file)

Im trying to start a project on play in IntelliJ IDEA Ultimate MacBook Pro on M1, I get the following error in the console:

[error] java.lang.UnsatisfiedLinkError:
/Users/username/Library/Caches/JNA/temp/jna2878211531869408345.tmp:
dlopen(/Users/username/Library/Caches/JNA/temp/jna2878211531869408345.tmp,
0x0001): tried:
'/Users/username/Library/Caches/JNA/temp/jna2878211531869408345.tmp'
(fat file, but missing compatible architecture (have 'i386,x86_64',
need 'arm64e')), '/usr/lib/jna2878211531869408345.tmp' (no such file)

I tried to reinstall the JDK on the arm architecture after deleting all the JDKs, it did not help

What needs to be tricked to fix this?

Full StackTrace:

[error] java.lang.UnsatisfiedLinkError: /Users/romangoltsov/Library/Caches/JNA/temp/jna2878211531869408345.tmp: dlopen(/Users/romangoltsov/Library/Caches/JNA/temp/jna2878211531869408345.tmp, 0x0001): tried: '/Users/romangoltsov/Library/Caches/JNA/temp/jna2878211531869408345.tmp' (fat file, but missing compatible architecture (have 'i386,x86_64', need 'arm64e')), '/usr/lib/jna2878211531869408345.tmp' (no such file)
    [error]     at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)
    [error]     at java.base/java.lang.ClassLoader$NativeLibrary.load(ClassLoader.java:2442)
    [error]     at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(ClassLoader.java:2498)
    [error]     at java.base/java.lang.ClassLoader.loadLibrary0(ClassLoader.java:2694)
    [error]     at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2627)
    [error]     at java.base/java.lang.Runtime.load0(Runtime.java:768)
    [error]     at java.base/java.lang.System.load(System.java:1837)
    [error]     at com.sun.jna.Native.loadNativeDispatchLibraryFromClasspath(Native.java:1018)
    [error]     at com.sun.jna.Native.loadNativeDispatchLibrary(Native.java:988)
    [error]     at com.sun.jna.Native.<clinit>(Native.java:195)
    [error]     at io.methvin.watchservice.jna.CarbonAPI.<clinit>(CarbonAPI.java:19)
    [error]     at io.methvin.watchservice.jna.CFStringRef.toCFString(CFStringRef.java:23)
    [error]     at io.methvin.watchservice.MacOSXListeningWatchService.register(MacOSXListeningWatchService.java:101)
    [error]     at io.methvin.watchservice.WatchablePath.register(WatchablePath.java:50)
    [error]     at io.methvin.watcher.DirectoryWatcher.register(DirectoryWatcher.java:352)
    [error]     at io.methvin.watcher.DirectoryWatcher.registerAll(DirectoryWatcher.java:317)
    [error]     at io.methvin.watcher.DirectoryWatcher.<init>(DirectoryWatcher.java:167)
    [error]     at io.methvin.watcher.DirectoryWatcher$Builder.build(DirectoryWatcher.java:118)
    [error]     at play.dev.filewatch.DefaultFileWatchService.watch(DefaultFileWatchService.scala:38)
    [error]     at play.dev.filewatch.FileWatchService$anon$1.watch(FileWatchService.scala:87)
    [error]     at play.runsupport.Reloader.<init>(Reloader.scala:414)
    [error]     at play.runsupport.Reloader$.reloader$lzycompute$1(Reloader.scala:259)
    [error]     at play.runsupport.Reloader$.play$runsupport$Reloader$reloader$1(Reloader.scala:251)
    [error]     at play.runsupport.Reloader$.startDevMode(Reloader.scala:271)
    [error]     at play.sbt.run.PlayRun$.devModeServer$lzycompute$1(PlayRun.scala:99)
    [error]     at play.sbt.run.PlayRun$.devModeServer$1(PlayRun.scala:83)
    [error]     at play.sbt.run.PlayRun$.$anonfun$playRunTask$3(PlayRun.scala:106)
    [error]     at play.sbt.run.PlayRun$.$anonfun$playRunTask$3$adapted(PlayRun.scala:68)
    [error]     at scala.Function1.$anonfun$compose$1(Function1.scala:49)
    [error] stack trace is suppressed; run 'last Compile / run' for the full output
    [error] (Compile / run) java.lang.UnsatisfiedLinkError: /Users/romangoltsov/Library/Caches/JNA/temp/jna2878211531869408345.tmp: dlopen(/Users/romangoltsov/Library/Caches/JNA/temp/jna2878211531869408345.tmp, 0x0001): tried: '/Users/romangoltsov/Library/Caches/JNA/temp/jna2878211531869408345.tmp' (fat file, but missing compatible architecture (have 'i386,x86_64', need 'arm64e')), '/usr/lib/jna2878211531869408345.tmp' (no such file)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

近箐 2025-01-16 19:43:02

找到了解决办法:
sbt 1.4.6内部有一个JNA库版本5.5.0,显然没有arm64架构处理器必需的文件
将 sbt 版本提高到 1.6.2 有帮助

Found a solution:
Inside sbt 1.4.6 there is a JNA library version 5.5.0, which apparently does not have the necessary files for the arm64 architecture processor
Raising the sbt version to 1.6.2 helped

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文