Примітка: якщо у вас є щось, що дійсно потребує java6 і не буде працювати з java7, то, можливо, ви захочете відкласти час встановлення java7. Причина в тому, що може бути трохи складним спробувати зберегти як 6, так і 7 на одному macintosh, оскільки 7 кг є деяким возитися з деякими яблучними предметами, як описано нижче. Отже, я буду шукати покрокові інструкції щодо збереження 6 і 7 на тому самому Mac, перш ніж виконувати цю програму ... Дивіться також http://reviews.cnet.com/8301-13727_7-57533880-263/ java-preferences-missing-after-latest-os-x-java-update / 18 жовтня 2012 року.
ДЕТАЛІ Сценарій оболонки перед встановленням у jre-7u9-macosx-x64.dmg просто видаляє попередню панель Apple (як і плагін), без попередження.
#!/bin/bash
PLUGIN_BASEDIR=/Library/Internet\ Plug-Ins
PLUGIN_NAME=${PLUGIN_BASEDIR}/JavaAppletPlugin.plugin
MKDIR=`which mkdir`
RM=/bin/rm
# Remove the symlink before installation forcing ystem Preferences.app to refresh its cache
PREF_PANE_NAME=JavaControlPanel.prefpane
PREF_PANE_DEST=/Library/PreferencePanes/
# Actually removes the symlink
if [[ -h "${PREF_PANE_DEST}/${PREF_PANE_NAME}" ]]; then
${RM} -rf "${PREF_PANE_DEST}/${PREF_PANE_NAME}"
fi
# Create the /Library/Internet Plug-Ins if not present
if [[ ! -d "${PLUGIN_BASEDIR}" ]]; then
${MKDIR} -p "${PLUGIN_BASEDIR}"
fi
# If Apple's plugin is present, then delete it
if [[ -h "${PLUGIN_NAME}" ]] && [[ -d "${PLUGIN_NAME}" ]]; then
${RM} -rf "${PLUGIN_NAME}"
fi
=== І сценарій після встановлення встановлює симпосилання ===
#!/bin/bash
LN=`which ln`
CHOWN=`which chown`
PLUGIN_FILEPATH=/Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
PREF_PANE_NAME=JavaControlPanel.prefpane
PREF_PANE_SRC=/Library/Internet\ Plug- Ins/JavaAppletPlugin.plugin/Contents/Home/lib/deploy/JavaControlPanel.prefpane
PREF_PANE_DEST=/Library/PreferencePanes/
if [ ! -h "${PREF_PANE_DEST}/${PREF_PANE_NAME}" ]; then
${LN} -s "${PREF_PANE_SRC}" "${PREF_PANE_DEST}"
fi
${CHOWN} -R root:wheel "${PLUGIN_FILEPATH}"