Java 7 만있는 Mountain Lion java version

Mountain Lion을 새로 설치하고 JDK7을 설치했습니다.

java -version터미널에서 java version "1.7.0_05"올바르게 리턴 되면 여전히 Java 환경 설정 및 Eclipse와 같은 일부 다른 Java 프로그램이 Java SE 6을 설치하라는 프롬프트를 표시합니다.

Java 7을 사용하여 명령 행에서 Eclipse를 완벽하게 시작할 수 있습니다.

Java 6을 설치하지 않고도이 작업을 수행 할 수있는 방법이 있습니까?



답변

JDK 7은 /Library/Java/JavaVirtualMachines/1.7.0.jdk에, JDK 6은 / System / Library / Java / JavaVirtualMachines에 설치됩니다.

Java 6 설치를 제안하지 않고 Java 7을 받도록 OS X를 속이려면 간단한 심볼릭 링크로 충분합니다.

sudo mkdir /System/Library/Java/JavaVirtualMachines
sudo ln -s /Library/Java/JavaVirtualMachines/1.7.0.jdk /System/Library/Java/JavaVirtualMachines/1.6.0.jdk

대부분의 Java 프로그램은 Java 6을 설치할 필요없이이 작은 해킹으로 실행됩니다. OS X의 Java 환경 설정 (및 기타 일부)은 JVM이 시작될 때 명시 적으로 JVM 버전을 확인하는 것처럼 보이지 않습니다.


답변

참고 : 실제로 java6이 필요하고 java7과 작동하지 않는 것이있는 경우 java7 설치를 연기 할 수 있습니다. 7 pkg가 아래에 설명 된 것처럼 apple-6-java 항목 중 일부를 혼란스럽게하기 때문에 동일한 매킨토시에 6과 7을 모두 유지하는 것이 약간 까다로울 수 있습니다. 그래서, 이것을 롤아웃하기 전에 같은 맥에 6과 7을 유지하는 방법에 대한 단계별 지침을 찾고 있습니다 … 또한 http://reviews.cnet.com/8301-13727_7-57533880-263/ 2012 년 10 월 18 일의 java-preferences-missing-after-latest-os-x-java-update /

세부 사항 jre-7u9-macosx-x64.dmg의 사전 설치 셸 스크립트는 아래 경고없이 Apple pref-pane (및 플러그인)을 제거합니다.

#!/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

=== 그리고 설치 후 스크립트는 symlink를 설정합니다 ===

#!/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}"

답변

Java 7 만있는 Mountain Lion

당신은 올바른 길을 가고 있습니다 … 

Java 6을 설치하지 않고

… 질문에 설명 된대로 설치하라는 메시지가 표시됩니다.

제 대답은 그렇습니다. Java 7 만 가질 수 있습니다. Java 6을 설치하지 않은 경우.

시험:

  1. Apple의 Java 설치 허용
  2. 아래 두 디렉토리에서 더 이상 필요하지 않은 Java 버전을 제거하십시오.

    / 라이브러리 / Java / JavaVirtualMachines

    / 시스템 / 라이브러리 / Java / JavaVirtualMachines

(이와 같은 경우에는 방해하지 않는 일반적인 조언을 무시할 수 있다고 생각합니다 /System.)