我有多個系統需要舊版瀏覽器和 Java。我需要 Portable Firefox 來執行 Portable Java JRE 版本,而不是作業系統上安裝的 Java JRE。
這些遺留系統之一是較舊的 HP iLO 控制台螢幕,它需要 Java。
作業系統是Windows 10 企業版 21h2
我在作業系統上本機安裝了 Java 8 JRE 更新 202,以供其他應用程式使用。
以下帖子幫助我到目前為止:
如何在具有不同版本(1.6 和 1.7)的 Windows(7)中運行兩個帶有 Java 插件的瀏覽器(Firefox)?
https://portableapps.com/node/21946
手提式 Firefox 版本 3.6.28 安裝位置:
C:\PortableApps\FirefoxPortablev3.6.28
可移植 Java JRE 6 Update 22 安裝位置:
C:\PortableApps\CommonFiles\Java
對 Portable Firefox 和 Portable Java 進行的設定變更:
Moved to following files to temporary folder:
- npdeploytk.dll
- npjpi160_17.dll
- npoji610.dll
- npt.dll
From C:\PortableApps\CommonFiles\Java\bin\
To C:\PortableApps\CommonFiles\Java\bin\_backup
Moved the following file:
- npjp2.dll
From C:\PortableApps\CommonFiles\Java\bin\new_plugin\
To C:\PortableApps\CommonFiles\Java\bin\
Edited the file called "FirefoxPortable.ini" located in C:\PortableApps\FirefoxPortablev3.6.28 with following content:
[FirefoxPortable]
PluginsDirectory=..\CommonFiles\Java\bin
以下內容將阻止 Firefox 便攜版使用「MozillaPlugins」註冊表項。
在便攜式 Firefox 中開啟新分頁並將其輸入網址關於:配置並進一步進行。
然後搜尋以下插件並將其設定為FALSE
set plugin.scan.plid.all to FALSE
當我啟動 Firefox 便攜版並在新增中時,我只看到 Java 6 外掛程式:
當我在便攜式版本的 Firefox 上啟動 Java 應用程式時,它使用 Java 6 插件,但使用的是 Java 8 JRE 而不是 Java 6 JRE:
這會導致應用程式失敗,因為 Java 8 JRE 更新 202 不支援它,但我可以確認 PC 是否只有 Java 6 JRE 更新 22,Java 應用程式功能正常。
由於某種原因,Java 8 JRE 更新 202 仍在使用。
是否可以強制 Firefox portable 執行 Java Portable JRE 而不是 Java JRE 的本機安裝?
更新1
以下 URL 顯示可以在 JPortable 版本 7 上進行離線安裝:
https://ryanwintaraga.wordpress.com/2013/02/10/how-to-install-jportable-offline/
我不知道這是否是進步,但由於我在封閉的互聯網網路上,我在我的個人電腦上安裝了 JPortable 並複製資料夾公共文件\Java以及其中的所有子資料夾爪哇到我遇到問題的電腦。
所以我決定嘗試版本 jPortable_7_Update_13_online.paf 並下載了 JRE 檔案 jre-7u13-windows-i586
我將這兩個檔案放在一個資料夾中(這允許離線安裝),並在我的封閉網路 PC 上完成安裝過程,並進行與上面相同的檔案更改,並在瀏覽器上重新測試。
這裡的區別是我收到一條警告,指出我的 Java 已過期(這是一個好兆頭,因為它是第一次使用便攜式 Java JRE 更新 13):
然後,選擇該選項後,我的應用程式會出現一個彈出窗口,一段時間後瀏覽器崩潰(之前沒有警告或錯誤訊息):
更新2
經過更多研究和測試,在我的具有互聯網連接的個人電腦上安裝JPortable Java JRE 6 Update 22,並將資料夾從個人電腦複製到另一台電腦(互聯網訪問被阻止)或安裝(互聯網訪問被阻止的電腦)JPortable Java JRE 7 Update 13與同一安裝資料夾中的 jre-7u13-windows-i586 檔案沒有什麼區別 JPortable 可以雙向工作。
答案1
經過大量測試和研究,我發現了導致本地 Java 8 JRE 在 Java 6 外掛程式中運行的問題。
如果您導航到以下資料夾(取決於您安裝 JPortable 的方式):
C:\PortableApps\CommonFiles\Java\bin
選擇檔案 javacpl.exe(我建議右鍵單擊並“以管理員身份運行”):
在使用者帳戶控制訊息上選擇是:
現在螢幕上應該會彈出 JPortable JRE 6 Update 22 控制面板:
選擇 Java 選項卡並選擇“查看...”:
現在您應該看到 JRE 的 JPortable 能夠存取。
下一步很重要
您需要取消選取 Java 8 Update 202 或您已安裝的任何內容的“啟用”框,然後選擇“確定”
然後選擇“應用”:
您可能會收到此警告,選擇“確定”
現在,當我在舊版便攜式 Firefox 上重新嘗試運行 Java 應用程式時,它工作正常:
問題是我不知道同一台 PC 上安裝的任何其他版本的 Java 都有自己的 Java 控制面板設定存儲在自己的資料夾中 - 我假設最新版本的 Java 將優先於安裝的所有舊版本的 Java上,因此如果您在Java 控制面板中對Java 8 JRE Update 202 進行更改,這會將其推送到其他版本的Java-不是這種情況
我相信您仍然需要停用舊版便攜式 Firefox 搜尋整個 PC 的插件才能使其正常工作。