Я установил Firefox в каталог пользователя (версия 3.6.10) /cache/app/firefox
.
Я установил java jre1.6.0_21 в /cache/app/java/jre1.6.0_21
У меня есть ссылка на /cache/app/java/jre1.6.0_21/plugin/i386/ns7/libjavaplugin_oji.so
в /cache/app/firefox/plugins/libjavaplugin_oji.so
Итак, теоретически, когда я запускаю Firefox, плагин должен быть указан в about:config
- неправильно. У меня есть много других плагинов, которые работают просто отлично, но java нигде не указан.
Я запустил strace -F ./firefox >/tmp/output.txt 2>&1
(-F
необходим, поскольку плагины Firefox теперь загружаются в разветвленном процессе). Firefox явно находит мой плагин:
[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
Похоже, что плагин находят, открывают и считывают первые 512 байт и, возможно, отображают память. Так почему же он не появляется в списке плагинов?
Одна подсказка может заключаться в том, что в каталогах по умолчанию лежит другой более старый плагин (и я не могу это изменить, у меня нет root, поэтому я запускаю firefox в пользовательском режиме).
[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
Хотя, конечно, Firefox достаточно умен, чтобы выбрать последний и использовать его? Есть ли способ включить отладку во время запуска Firefox, чтобы я мог найти сообщение отладки, которое объясняет, почему последний плагин JRE 1.6 пропускается?
Действительно расстраиваю, я потратил часы на это.