eclipse-equinox / equinox

equinox
Eclipse Public License 2.0
31 stars 66 forks source link

[macOS] Launcher in 4.31 cannot find its companion shared library when invoked via symlink #570

Open guw opened 6 months ago

guw commented 6 months ago

The layout on macOS is different. Eclipse is bundled as a macOS app Eclipse.app. We have a symlink eclipse ⇒ Eclipse.app/Contents/MacOS/eclipse to the real binary within the app.

We use this to invoke some applications:

eclipse -application org.eclipse.equinox.p2.director ...

With 4.31 this stopped working. When calling the symlink Eclipse hangs. There is a pop up saying that the launcher is unable to locate the companion shared library.

Calling the binary directly still works:

Eclipse.app/Contents/MacOS/eclipse -application org.eclipse.equinox.p2.director
2024-03-27 17:30:15.326 eclipse[56801:2458810] WARNING: Secure coding is not enabled for restorable state! Enable secure coding by implementing NSApplicationDelegate.applicationSupportsSecureRestorableState: and returning YES.
Mar 27, 2024 5:30:16 PM org.apache.aries.spifly.BaseActivator log
INFO: Registered provider ch.qos.logback.classic.spi.LogbackServiceProvider of service org.slf4j.spi.SLF4JServiceProvider in bundle ch.qos.logback.classic
17:30:17.984 [Start Level: Equinox Container: 76a1e13f-f925-4539-b7bb-a2653b89870c] DEBUG org.eclipse.jgit.internal.util.ShutdownHook -- register org.eclipse.jgit.util.FS$FileStoreAttributes$$Lambda$170/0x00000000802543f8@33958e5b with shutdown hook
...

Steps to reproduce:

mdaloia commented 4 months ago

This could be related to this change https://github.com/eclipse-equinox/equinox/commit/19582c5fc50a7946b8e642d26740daae8ba32197 introduced in 4.31 that also seems to cause this other issue: https://github.com/eclipse-equinox/equinox/issues/631