Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I have installed firefox to a user directory (version 3.6.10) /cache/app/firefox.

I have installed java jre1.6.0_21 to /cache/app/java/jre1.6.0_21

I have symlinked /cache/app/java/jre1.6.0_21/plugin/i386/ns7/libjavaplugin_oji.so to /cache/app/firefox/plugins/libjavaplugin_oji.so

So, in theory, when I start firefox the plugin should be listed in about:config - wrong. I have lots of other plugins working just fine, but java is not listed anywhere.

I ran strace -F ./firefox >/tmp/output.txt 2>&1 (the -F is necessary as firefox plugins are now loaded in a forked process). Firefox clearly finds my plugin:

[pid  5121] lstat64("/cache/app/firefox/plugins/libjavaplugin_oji.so", {st_mode=S_IFLNK|0777, st_size=78, ...}) = 0
[pid  5121] readlink("/cache/app/firefox/plugins/libjavaplugin_oji.so", "/cache/app/java/jre1.6.0_21/plugin/i386/ns7/libjavaplugin_oji.so"..., 4096) = 78
...
[pid  5121] lstat64("/cache/app/java/jre1.6.0_21/plugin/i386/ns7/libjavaplugin_oji.so", {st_mode=S_IFREG|0755, st_size=137021, ...}) = 0
[pid  5121] stat64("/cache/app/java/jre1.6.0_21/plugin/i386/ns7/libjavaplugin_oji.so", {st_mode=S_IFREG|0755, st_size=137021, ...}) = 0
[pid  5121] access("/cache/app/java/jre1.6.0_21/plugin/i386/ns7/libjavaplugin_oji.so", F_OK) = 0
[pid  5121] open("/cache/app/java/jre1.6.0_21/plugin/i386/ns7/libjavaplugin_oji.so", O_RDONLY) = 35
[pid  5121] read(35, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\20\250\0\0004\0\0\0\4"..., 512) = 512

It clearly looks like the plugin is being found, opened, and the first 512 bytes read and possibly memory mapped. So why doesn't it appear in the list of plugins?

One clue could be that there's another older plugin lying in the default directories (and I can't change this, I don't have root, hence running firefox in user mode).

[pid  5121] lstat64("/usr/lib/jvm/java-1.5.0-sun-1.5.0.22/jre/plugin/i386/ns7/libjavaplugin_oji.so", {st_mode=S_IFREG|0644, st_size=103436, ...}) = 0
[pid  5121] stat64("/usr/lib/jvm/java-1.5.0-sun-1.5.0.22/jre/plugin/i386/ns7/libjavaplugin_oji.so", {st_mode=S_IFREG|0644, st_size=103436, ...}) = 0

Though surely firefox is smart enough to pick the latest one and use that? Is there a way of turning debugging ON during firefox start-up so I can find a debug message that explains why the latest JRE 1.6 plugin is being passed over?

Really frustrating, I've spent hours on this.

share|improve this question
    
Same problem. CentOS 5-current, Firefox-3.6.9, with Java 1.6.0.11, packaged as instructed from here: wiki.centos.org/HowTos/JavaOnCentOS I find it both amusing and frustrating that questions entered on ServerFault or SuperUser quickly become highly ranked results in Google. –  David Mackintosh Sep 29 '10 at 20:40
    
Probably because no body has encountered the same problem and documented it before; most users would have root access to their desktop machine making this a less common problem. –  PP. Sep 30 '10 at 8:32

1 Answer 1

I found http://kb.mozillazine.org/Determining_plugin_directory_on_Linux that seems to document the locations that are searched and which takes priority, but I'm not sure how dated that information is.

Also, are you using 64bit or 32bit firefox? 64bit requires 64bit plugins or special workarounds.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.