Installed dev-java/icedtea-bin-7.2.4.3 with USE="X alsa cjk cups nsplugin" + dev-java/icedtea-web-1.4.1 with USE="icedtea7 javascript nsplugin". Java Webstart does not start: $ javaws * javaws is not available for icedtea-bin-7 on x86_64 * IMPORTANT: some Java tools are not available on some VMs on some architectures $ There is, however, a javaws binary provided by icedtea-web. Unfortunately, "eselect java-vm" does not honor this one. Also, the icedtea-web nsplugin only gets called by firefox for JAR files, not for JNLP files (on my system, at least). I fixed it manually by just creating the following symlink: $ ln -s /usr/libexec/icedtea-web/javaws /usr/lib/jvm/icedtea-bin-7/bin/javaws Can this be done automatically by the icedtea-bin-7 ebuild if USE=nsplugin has been selected (and thus, icedtea-web has been installed)?
I've added
I've added a webstart USE flag that controls creation of the javaws symlink. So with that enabled, it should work. But dev-java/icedtea has to be updated as well, with phasing out the outdatted slotted icedtea-web:6 and :7 since there will be file conflicts there.
javaws still doesn't work in current icedtea-bin-6.1.13.3-r3, but this workaround works ok: $ ln -s /usr/libexec/icedtea-web/javaws /usr/lib/jvm/icedtea-bin-6/bin/javaws
Yes, the problem still exists. $ qlist -ICv icedtea-web icedtea-bin dev-java/icedtea-bin-7.2.4.7 dev-java/icedtea-web-1.4.2-r1 Symlinks are broken: $ qlist dev-java/icedtea-bin | grep javaws /opt/icedtea-bin-7.2.4.7/bin/javaws /opt/icedtea-bin-7.2.4.7/jre/bin/javaws $ ls -l /opt/icedtea-bin-7.2.4.7/bin/javaws /opt/icedtea-bin-7.2.4.7/jre/bin/javaws lrwxrwxrwx 1 root root 34 Jun 3 10:15 /opt/icedtea-bin-7.2.4.7/bin/javaws -> /usr/lib64/icedtea7-web/bin/javaws lrwxrwxrwx 1 root root 34 Jun 3 10:15 /opt/icedtea-bin-7.2.4.7/jre/bin/javaws -> /usr/lib64/icedtea7-web/bin/javaws $ readlink -f /opt/icedtea-bin-7.2.4.7/bin/javaws $ readlink -f /opt/icedtea-bin-7.2.4.7/jre/bin/javaws javaws binary is located at different place: $ qlist dev-java/icedtea-web | grep javaws /usr/share/man/man1/javaws.1.bz2 /usr/share/icedtea-web/javaws_splash.png /usr/libexec/icedtea-web/javaws
Indeed, only IcedTeaPlugin.so is in $libdir. Changing: dosym /usr/$(get_libdir)/icedtea${SLOT}-web/bin/javaws ${dest}/bin/javaws dosym /usr/$(get_libdir)/icedtea${SLOT}-web/bin/javaws ${dest}/jre/bin/javaws To: dosym /usr/libexec/icedtea${SLOT}-web/bin/javaws ${dest}/bin/javaws dosym /usr/libexec/icedtea${SLOT}-web/bin/javaws ${dest}/jre/bin/javaws Should do the trick.
icedtea-bin revbumped with fixes, fixing icedtea will be more complicated
*** Bug 524624 has been marked as a duplicate of this bug. ***
*** Bug 496200 has been marked as a duplicate of this bug. ***
Fixed in 1.6.1. I would close this when it's stable but that might not be for a little while so I'll close it now. We ideally need virtual/jdk-1.8 to go stable first for a long chain of reasons that are hard to explain.