(I split this into a separate thread so it's clearer what the discussion is about.)
It looks like BareBonesBrowserLaunch primarily handles launching a non-default browser, at this point. It doesn't seem like java.awt.Desktop allows for this to be configured at all, so if we want to keep this feature, we'll want to keep something like it around. (Not to say we can't clean up the logic -- we no longer need reflection for java.awt.Desktop.browse, and once we move to Java 9, we should remove the Mac-specific reflection, too.)
A thread from last year regarding OSXAdapter:
https://kolmafia.us/threads/java-14-no-longer-compatible-with-current-osxadapter.25285/
When we move to Java 9+, we should remove those instances of reflection, and use java.awt.Desktop directly at the callsites.
java.awt.SystemTray (and TrayIcon, and PopupMenu) has existed since 1.6, according to Oracle's docs.
@fronobulax or someone else on Windows, if I post a patch to rip out the com.jeans.trayicon dependency, do you mind taking it for a spin? (I could try it out myself, but it'll require copying the jar to another computer.)