Java.com

다운로드 도움말

인쇄용 버전

Java 8 릴리스 주요 기능


적용 대상:
  • Java 버전: 8.0

이 페이지에서는 Java 8 릴리스 일반 사용자에게 영향을 주는 변경 사항에 대해 설명합니다. 변경 사항에 대한 자세한 내용은 각 릴리스의 릴리스 노트에서 찾을 수 있습니다.
» Java 릴리스 날짜


Java 8 Update 60(8u60)

릴리스 주요 기능
  • IANA 데이터 2015e
    JDK 8u60에는 IANA 시간대 데이터 버전 2015e가 포함됩니다. 자세한 내용은 JRE 소프트웨어의 시간대 데이터 버전을 참조하십시오.
  • 버그 수정: dns_lookup_realm은 기본적으로 false여야 함
    Kerberos' krb5.conf 파일의 dns_lookup_realm 설정은 기본적으로 false입니다. 8080637을 참조하십시오.
  • 버그 수정: RC4 암호화 모음 사용 안함
    RC4 기반 TLS 암호화 모음(예: TLS_RSA_WITH_RC4_128_SHA)은 현재 노출된 것으로 간주되며 더 이상 사용해서는 안됩니다(RFC 7465 참조). 이에 따라 "RC4"를 "jdk.tls.disabledAlgorithms" 보안 속성에 추가하고 기본적으로 사용으로 설정된 암호화 모음 목록에서 제거함으로써 RC4 기반 TLS 암호화 모음이 Oracle JSSE 구현에서 기본적으로 비활성화되었습니다. 이러한 암호화 모음은 java.security 파일의 "jdk.tls.disabledAlgorithms" 보안 속성에서 "RC4"를 제거하거나 Security.setProperty()를 동적으로 호출하고, SSLSocket/SSLEngine.setEnabledCipherSuites() 메소드를 사용하여 사용으로 설정된 암호화 모음 목록에 다시 추가함으로써 다시 활성화할 수 있습니다. -Djava.security.properties 명령행 옵션을 사용하여 jdk.tls.disabledAlgorithms 보안 속성을 무효화할 수도 있습니다. 예:
    java -Djava.security.properties=my.java.security ...
    여기서 my.java.security는 RC4가 없는 속성이 포함된 파일입니다.
    jdk.tls.disabledAlgorithms=SSLv3
    이 옵션을 명령행에서 설정했더라도 SSLSocket/SSLEngine.setEnabledCipherSuites() 메소드를 사용하여 RC4 기반 암호화 모음을 사용으로 설정된 암호화 모음 목록에 다시 추가해야 합니다. 8076221을 참조하십시오.
  • 버그 수정: JKS 및 PKCS12 키 저장소에 대한 키 저장소 유형 감지 지원
    키 저장소 호환성 모드: 상호 운용성을 돕기 위해 Java 키 저장소 유형 JKS에서 이제 기본적으로 키 저장소 호환성 모드를 지원합니다. 이 모드를 통해 JKS 키 저장소에서 JKS 및 PKCS12 파일 형식에 모두 액세스할 수 있습니다. 키 저장소 호환성 모드를 사용 안함으로 설정하려면 보안 속성 keystore.type.compat을 문자열 값 false로 설정합니다. 8062552를 참조하십시오.
  • 버그 수정: JDK 8u 릴리스에서 Unsafe monitor 메소드 사용 안함
    sun.misc.UnsafemonitorEnter, monitorExittryMonitorEnter 메소드는 JDK 8u60에서 사용되지 않음으로 표시되며 이후 릴리스에서 제거될 예정입니다. 이러한 메소드는 JDK 자체 내에서 사용되지 않으며 JDK 외부에서는 매우 드물게 사용됩니다. 8069302를 참조하십시오.
  • 버그 수정: SA를 사용하여 코어 파일에서 JFR 레코딩 추출
    DumpJFR은 코어 파일 및 라이브 Hotspot 프로세스에서 JFR(Java Flight Recorder) 데이터를 추출하는 데 사용할 수 있는 Serviceability Agent 기반 툴입니다. DumpJFR은 다음 메소드 중 하나에서 사용될 수 있습니다.
    • DumpJFR을 라이브 프로세스에서 연결:

      java -cp $JAVA_HOME/lib/sa-jdi.jar sun.jvm.hotspot.tools.DumpJFR <pid>

    • DumpJFR을 코어 파일에 연결:

      java -cp $JAVA_HOME/lib/sa-jdi.jar sun.jvm.hotspot.tools.DumpJFR <java> <core>

    DumpJFR 툴은 JFR 데이터를 현재 작업 폴더의 recording.jfr이라는 파일에 덤프합니다. 8065301(비공개)을 참조하십시오.
  • 버그 수정: 'enum' 이름의 로컬 변수로 인해 잘못된 컴파일러 충돌이 발생함
    javac 구문 분석기가 'enum' 이름의 로컬 변수를 잘못 구문 분석하고 있습니다. 이로 인해 이러한 로컬 변수가 포함된 프로그램이 enum 생성을 사용할 수 없는 릴리스에 해당하는 'source' 플래그(예: '-source 1.4')로 컴파일될 때 잘못된 실패가 발생합니다. 8069181을 참조하십시오.
ARM 릴리스 8u60용 Java Development Kit

이 릴리스에는 ARM 릴리스 8u60용 Java Development Kit(ARM용 JDK 8u60)가 포함되어 있습니다. ARM 장치 지원 정보는 ARM용 JDK 다운로드 페이지를 참조하십시오. 시스템 요구 사항, 설치 지침 및 문제 해결 팁은 설치 지침 페이지를 참조하십시오.

제한 사항: ARM용 JDK에서는 Native Memory Tracking 지원이 제한됩니다. ARM 대상에 대해서는 Java 명령행 옵션 XX:NativeMemoryTracking=detail이 지원되지 않습니다(사용자에게 오류 메시지가 표시됨). 대신 다음 옵션을 사용하십시오.
XX:NativeMemoryTracking=summary

Nashorn 개선 사항으로 인한 설명서 업데이트
JDK 8u60에는 Nashorn에 대한 새로운 개선 사항이 포함되어 있습니다. 이에 따라 다음과 같은 설명서 변경 사항은 현재 Nashorn 설명서와 함께 읽어야 합니다.
  • 추가 사항: 이전 섹션에서 모든 JavaScript 객체는 Java API에 노출될 때 java.util.Map 인터페이스를 구현한다고 언급했습니다. 이 사항은 JavaScript 배열의 경우에도 해당됩니다. 하지만 이 동작은 Java 코드가 JSON 구문 분석된 객체를 예상할 때 바람직하지 않거나 예상되지 않을 수 있습니다. JSON 구문 분석된 객체를 조작하는 Java 라이브러리는 대개 배열이 java.util.List 인터페이스를 대신 노출하도록 예상합니다. 배열이 맵이 아닌 목록으로 노출되도록 JavaScript 객체를 노출해야 하는 경우 Java.asJSONCompatible(obj) 함수를 사용할 수 있습니다. 여기서 obj는 JSON 객체 트리의 루트입니다.
  • 정정 사항: 데이터 유형 매핑 섹션의 끝에서 언급한 주의 사항은 더 이상 적용되지 않습니다. Nashorn은 외부에 노출될 때 내부 JavaScript 문자열이 java.lang.String으로 변환되도록 합니다.
  • 정정 사항: 데이터 유형 매핑 섹션에서 "예를 들어, 배열은 명시적으로 변환되어야 한다,..."는 말은 올바르지 않습니다. 배열은 java.util.List, java.util.Collection, java.util.Queue, java.util.Deque 등과 같은 Java 배열 유형으로 자동으로 변환됩니다.
배치 규칙 집합 v1.2의 변경 사항
JDK 8u60에서는 DRS(배치 규칙 집합) 1.2를 구현하며, 여기에는 다음 변경 사항이 포함됩니다.
  • 압축되지 않은 jar 형식의 SHA-256 체크섬에서 서명되지 않은 jar를 식별할 수 있도록 "checksum" 요소를 "id"의 하위 요소로 추가:
    • "checksum" 요소는 서명되지 않은 jar와만 일치하고, 제공된 해시는 압축되지 않은 jar 형식에 대해서만 비교됩니다.
    • "checksum" 요소("certificate" 요소와 유사)는 두 인수 "hash""algorithm"을 가지지만, "certificate" 요소와 달리 "algorithm"에 대해 유일하게 지원되는 값은 "SHA-256"입니다. 제공된 기타 모든 값은 무시됩니다.
  • 이전에는 차단 규칙에만 적용되었던 "message" 요소가 모든 규칙 유형에 적용되도록 허용:
    • 실행 규칙에서 메시지 하위 요소는 메시지 대화상자가 표시되도록 합니다. 실행 규칙이 없는 경우 기본 동작은 인증서 또는 서명되지 않은 대화상자를 표시하는 것입니다. 메시지는 메시지 대화상자에 표시됩니다.
    • 기본 규칙에서 메시지는 기본 작업이 차단인 경우에만 표시됩니다. 이러한 경우 메시지는 차단 대화상자에 포함됩니다.
  • Java 콘솔, 추적 파일 및 Java Usage Tracker 레코드에서 "customer" 블록을 에코합니다.
    • DRS 1.2 이전에는 "customer" 요소가 모든 하위 요소와 함께 ruleset.xml 파일에 포함될 수 있었습니다. 이 요소 및 모든 해당 하위 요소는 무시됩니다. DRS 1.2에서 요소는 여전히 기능적으로 무시됩니다. 하지만
      • ruleset.xml 파일을 구문 분석할 때 모든 "customer" 블록은 Java 콘솔 및 배치 추적 파일에 에코됩니다(콘솔 및 추적이 사용으로 설정된 경우).
      • 규칙을 사용할 때 해당 규칙 내에 포함된 모든 "customer" 레코드는 JUT(Java Usage Tracker) 레코드에 추가됩니다(JUT가 사용으로 설정된 경우).
위 변경 사항의 결과로 DRS 1.2에 대한 DTD는 다음과 같습니다.
<!ELEMENT ruleset (rule*)>
<!ATTRIBUTE ruleset href CDATA #IMPLIED>
<!ATTRIBUTE ruleset version CDATA #REQUIRED>

<!ELEMENT rule (id, action)>

<!ELEMENT id (certificate?) (checksum?) >
<!ATTRIBUTE id title CDATA #IMPLIED>
<!ATTRIBUTE id location CDATA #IMPLIED>

<!ELEMENT certificate EMPTY>
<!ATTLIST certificate algorithm CDATA #IMPLIED>
<!ATTLIST certificate hash CDATA #REQUIRED>

<!ELEMENT checksum EMPTY>
<!ATTLIST checksum algorithm CDATA #IMPLIED>
<!ATTLIST checksum hash CDATA #REQUIRED>
 
<!ELEMENT action (message?)>
<!ATTRIBUTE permission (run | block | default) #REQUIRED>
<!ATTRIBUTE version CDATA #IMPLIED>
<!ATTRIBUTE force (true|false) "false">

<!ELEMENT message (#PCDATA)>
<!ATTLIST message locale CDATA #IMPLIED>

Java 만료 날짜

8u60의 만료 날짜는 2015년 10월 20일입니다. Java는 보안 취약점 수정이 포함된 새 릴리스가 제공될 때마다 만료됩니다. Oracle 서버에 연결할 수 없는 시스템의 경우 보조 방식에 따라 2015년 11월 20일에 이 JRE(버전 8u60)가 만료됩니다. 조건(새 릴리스 사용 가능 또는 만료 날짜 도달)에 충족되면 Java에서는 사용자에게 새로운 버전으로 업데이트하도록 추가 경고 및 통지를 제공합니다.

버그 수정

이 릴리스에 포함된 버그 수정 목록은 JDK 8u60 버그 수정 페이지를 참조하십시오.

» 8u60 릴리스 노트


Java 8 Update 51(8u51)

릴리스 주요 기능
  • IANA 데이터 2015d
    JDK 8u51에는 IANA 시간대 데이터 버전 2015d가 포함됩니다. 자세한 내용은 JRE 소프트웨어의 시간대 데이터 버전을 참조하십시오.
  • 버그 수정: 루트 CA에 새 Comodo 루트 추가
    Commodo용으로 네 개의 새 루트 인증서가 추가되었습니다.
    1. COMODO ECC Certification Authority
      별칭: comodoeccca
      DN: CN=COMODO ECC Certification Authority, O=COMODO CA Limited, L=Salford, ST=Greater Manchester, C=GB
    2. COMODO RSA Certification Authority
      별칭: comodorsaca
      DN: CN=COMODO RSA Certification Authority, O=COMODO CA Limited, L=Salford, ST=Greater Manchester, C=GB
    3. USERTrust ECC Certification Authority
      별칭: usertrusteccca
      DN: CN=USERTrust ECC Certification Authority, O=The USERTRUST Network, L=Jersey City, ST=New Jersey, C=US
    4. USERTrust RSA Certification Authority
      별칭: usertrustrsaca
      DN: CN=USERTrust RSA Certification Authority, O=The USERTRUST Network, L=Jersey City, ST=New Jersey, C=US
    JDK-8077997(비공개)을 참조하십시오.
  • 버그 수정: 루트 CA에 새 GlobalSign 루트 추가
    GlobalSign용으로 두 개의 새 루트 인증서가 추가되었습니다.
    1. GlobalSign ECC Root CA - R4
      별칭: globalsigneccrootcar4
      DN: CN=GlobalSign, O=GlobalSign, OU=GlobalSign ECC Root CA - R4
    2. GlobalSign ECC Root CA - R5
      별칭: globalsigneccrootcar5
      DN: CN=GlobalSign, O=GlobalSign, OU=GlobalSign ECC Root CA - R5
    JDK-8077995(비공개)를 참조하십시오.
  • 버그 수정: 루트 CA에 Actalis 추가
    한 개의 새 루트 인증서를 추가했습니다.
    Actalis Authentication Root CA
    별칭: actalisauthenticationrootca
    DN: CN=Actalis Authentication Root CA, O=Actalis S.p.A./03358520967, L=Milan, C=IT

    JDK-8077903(비공개)을 참조하십시오.
  • 버그 수정: 새 Entrust ECC 루트 추가
    한 개의 새 루트 인증서를 추가했습니다.
    Entrust Root Certification Authority - EC1
    별칭: entrustrootcaec1
    DN: CN=Entrust Root Certification Authority - EC1, OU="(c) 2012 Entrust, Inc. - for authorized use only", OU=See www.entrust.net/legal-terms, O="Entrust, Inc.", C=US

    JDK-8073286(비공개)을 참조하십시오.
  • 버그 수정: 기존 Valicert Class 1 및 2 Policy 루트 제거
    1024비트 키를 사용하는 두 개의 루트 인증서를 제거했습니다.
    1. ValiCert Class 1 Policy Validation Authority
      별칭: secomvalicertclass1ca
      DN: EMAILADDRESS=info@valicert.com, CN=http://www.valicert.com/, OU=ValiCert Class 1 Policy Validation Authority, O="ValiCert, Inc.", L=ValiCert Validation Network
    2. ValiCert Class 2 Policy Validation Authority
      별칭: valicertclass2ca
      DN: EMAILADDRESS=info@valicert.com, CN=http://www.valicert.com/, OU=ValiCert Class 2 Policy Validation Authority, O="ValiCert, Inc.", L=ValiCert Validation Network
    JDK-8077886(비공개)을 참조하십시오.
  • 버그 수정: 기존 Thawte 루트 제거
    1024비트 키를 사용하는 두 개의 루트 인증서를 제거했습니다.
    1. Thawte Server CA
      별칭: thawteserverca
      DN: EMAILADDRESS=server-certs@thawte.com, CN=Thawte Server CA, OU=Certification Services Division, O=Thawte Consulting cc, L=Cape Town, ST=Western Cape, C=ZA
    2. Thawte Personal Freemail CA
      별칭: thawtepersonalfreemailca
      DN: EMAILADDRESS=personal-freemail@thawte.com, CN=Thawte Personal Freemail CA, OU=Certification Services Division, O=Thawte Consulting, L=Cape Town, ST=Western Cape, C=ZA
    JDK-8074423(비공개)을 참조하십시오.
  • 버그 수정: 기존 Verisign, Equifax 및 Thawte 루트 제거
    1024비트 키를 사용하는 다섯 개의 루트 인증서를 제거했습니다.
    1. Verisign Class 3 Public Primary Certification Authority - G2
      별칭: verisignclass3g2ca DN: OU=VeriSign Trust Network, OU="(c) 1998 VeriSign, Inc. - For authorized use only", OU=Class 3 Public Primary Certification Authority - G2, O="VeriSign, Inc.", C=US
    2. Thawte Premium Server CA
      별칭: thawtepremiumserverca
      DN: EMAILADDRESS=premium-server@thawte.com, CN=Thawte Premium Server CA, OU=Certification Services Division, O=Thawte Consulting cc, L=Cape Town, ST=Western Cape, C=ZA
    3. Equifax Secure Certificate Authority
      별칭: equifaxsecureca
      DN: OU=Equifax Secure Certificate Authority, O=Equifax, C=US
    4. Equifax Secure eBusiness CA-1
      별칭: equifaxsecureebusinessca1
      DN: CN=Equifax Secure eBusiness CA-1, O=Equifax Secure Inc., C=US
    5. Equifax Secure Global eBusiness CA-1,
      별칭: equifaxsecureglobalebusinessca1
      DN: CN=Equifax Secure Global eBusiness CA-1, O=Equifax Secure Inc., C=US
    JDK-8076202(비공개)를 참조하십시오.
  • 버그 수정: cacerts에서 TrustCenter CA 루트 제거
    세 개의 루트 인증서를 제거했습니다.
    1. TC TrustCenter Universal CA I
      별칭: trustcenteruniversalcai
      DN: CN=TC TrustCenter Universal CA I, OU=TC TrustCenter Universal CA, O=TC TrustCenter GmbH, C=DE
    2. TC TrustCenter Class 2 CA II
      별칭: trustcenterclass2caii
      DN: CN=TC TrustCenter Class 2 CA II, OU=TC TrustCenter Class 2 CA, O=TC TrustCenter GmbH, C=DE
    3. TC TrustCenter Class 4 CA II
      별칭: trustcenterclass4caii
      DN: CN=TC TrustCenter Class 4 CA II, OU=TC TrustCenter Class 4 CA, O=TC TrustCenter GmbH, C=DE
    JDK-8072958(비공개)을 참조하십시오.
  • 버그 수정: SunJSSE 제공자의 RC4 사용 중단
    이제 RC4는 암호화가 취약한 것으로 간주됩니다. 클라이언트에서 요청한 암호화 모음 중 보다 강력한 다른 암호화가 있을 경우 서버에서 RC4를 선택하지 않아야 합니다. Oracle JSSE 구현에서 레거시 알고리즘을 정의하는 용도로 새 보안 속성인 jdk.tls.legacyAlgorithms가 추가되었습니다. RC4 관련 알고리즘이 레거시 알고리즘 목록에 추가되었습니다. JDK-8074006(비공개)을 참조하십시오.
  • 버그 수정: RC4 암호화 모음 금지
    이제 RC4는 노출된 암호화로 간주됩니다. RC4 암호화 모음이 Oracle JSSE 구현의 클라이언트 및 서버 기본 사용 암호화 모음 목록에서 제거되었습니다. SSLEngine.setEnabledCipherSuites()SSLSocket.setEnabledCipherSuites() 메소드를 통해 해당 암호화 모음을 사용으로 설정할 수는 있습니다. JDK-8077109(비공개)를 참조하십시오.
  • 버그 수정: 인증 검사 향상
    이 수정을 통해 기본적으로 JDK에서 JSSE 끝점 식별이 IP 주소에 대한 역방향 이름 조회를 수행하지 않습니다. 응용 프로그램이 SSL/TLS 접속에서 원시 IP 주소에 대한 역방향 이름 조회를 수행해야 하는 경우 끝점 식별 호환성 문제가 발생하면 시스템 속성인 "jdk.tls.trustNameService"를 사용하여 역방향 이름 조회를 설정할 수 있습니다. 이름 서비스를 신뢰할 수 없을 경우 역방향 이름 조회를 사용으로 설정하면 MITM 공격에 노출될 수 있습니다. JDK-8067695(비공개)를 참조하십시오.
Java 만료 날짜

8u51의 만료 날짜는 2015년 10월 20일입니다. Java는 보안 취약점 수정이 포함된 새 릴리스가 제공될 때마다 만료됩니다. Oracle 서버에 연결할 수 없는 시스템의 경우 보조 방식에 따라 2015년 11월 20일에 이 JRE(버전 8u51)가 만료됩니다. 조건(새 릴리스 사용 가능 또는 만료 날짜 도달)에 충족되면 Java에서는 사용자에게 새로운 버전으로 업데이트하도록 추가 경고 및 통지를 제공합니다.

버그 수정

이 릴리스에는 보안 취약점의 수정이 포함됩니다. 자세한 내용은 Oracle Java SE 중요한 패치 업데이트 권고 사항을 참조하십시오.

이 릴리스에 포함된 버그 수정 목록은 JDK 8u51 버그 수정 페이지를 참조하십시오.

» 8u51 릴리스 노트


Java 8 Update 45(8u45)

릴리스 주요 기능
  • IANA 데이터 2015a
    JDK 8u45에는 IANA 시간대 데이터 버전 2015a가 포함됩니다. 자세한 내용은 JRE 소프트웨어의 시간대 데이터 버전을 참조하십시오.
  • 버그 수정: jar 파일 처리를 개선합니다. JDK 8u45 릴리스부터 jar 툴에서 zip 및 jar 파일에서 압축을 풀거나 새로 생성할 때 zip 항목 파일 이름에 선행 슬래시 "/" 및 ".."(점 두 개) 경로 구성 요소를 사용할 수 없습니다. 필요한 경우 새 명령행 옵션 "-P"를 명시적으로 사용하여 점 두 개 및/또는 절대 경로 구성 요소를 보존해야 합니다. 8064601(비공개)을 참조하십시오.
  • 버그 수정: 중첩된 "resource" 섹션이 있는 jnlp 응용 프로그램이 jre8u40에서 로드 시 NPE로 인해 실패합니다. 또는 태그 내에 중첩된 태그가 있는 jnlp 응용 프로그램은 NPE가 발생할 수 있습니다. 이 문제는 수정되었습니다. 태그는 가 실제로 사용된 경우에만 사용해야 합니다. 8072631(비공개)을 참조하십시오.
Java 만료 날짜

8u45의 만료 날짜는 2015년 7월 14일입니다. Java는 보안 취약점 수정이 포함된 새 릴리스가 제공될 때마다 만료됩니다. Oracle 서버에 연결할 수 없는 시스템의 경우 보조 방식에 따라 2015년 8월 14일에 이 JRE(버전 8u45)가 만료됩니다. 조건(새 릴리스 사용 가능 또는 만료 날짜 도달)에 충족되면 Java에서는 사용자에게 새로운 버전으로 업데이트하도록 추가 경고 및 통지를 제공합니다.

버그 수정

이 릴리스에는 보안 취약점의 수정이 포함됩니다. 자세한 내용은 Oracle Java SE 중요한 패치 업데이트 권고 사항을 참조하십시오.

이 릴리스에 포함된 버그 수정 목록은 JDK 8u45 버그 수정 페이지를 참조하십시오.

» 8u45 릴리스 노트


Java 8 Update 40(8u40)

릴리스 주요 기능
  • IANA 데이터 2014j
    JDK 8u40에는 IANA 시간대 데이터 버전 2014j가 포함되어 있습니다. 자세한 내용은 JRE 소프트웨어의 시간대 데이터 버전을 참조하십시오.
  • 버그 수정: JDI, JDWP, JDB의 기본 및 정적 인터페이스 메소드. JDK 8 이후 기본 및 정적 메소드를 인터페이스에 직접 실행할 수 있습니다. 이 메소드는 JDWP 또는 JDI를 통해 실행할 수 없으므로 적절히 디버그할 수 없습니다. 자세한 내용은 JDK 8 Compatibility Guide를 참조하십시오. 8042123을 참조하십시오.
  • 버그 수정: 32비트 JRE용 제어판에서 Java Access Bridge를 사용으로 설정할 수 있습니다. 이전에는 32비트 JRE가 시스템에 있는 경우에도 64비트 비트 JRE 제거를 사용하면 "Java Access Bridge 사용" 체크 박스가 Java 제어판에서 제거되었습니다. JDK 8u40 릴리스부터는 32비트 JRE가 있는 경우 제어판 -> 접근성-> 접근성 센터 -> 디스플레이가 없는 컴퓨터 사용에 "Java Access Bridge 사용" 체크 박스가 남아 있습니다. 따라서 사용자가 제어판을 통해 Java Access Bridge를 사용으로 설정할 수 있습니다. 8030124를 참조하십시오.
  • 버그 수정: Mac OS X에서 JavaFX 매체 스택을 현대화합니다. AVFoundation 기반 플레이어 플랫폼이 JavaFX 매체에 추가되었습니다. Mac App Store 호환성을 위해 이전 QTKit 기반 플랫폼을 제거할 수 있습니다. 8043697(비공개)을 참조하십시오.
  • 버그 수정: 누락된 DOM API입니다. JDK 8u40 릴리스에서 기존 플러그인 DOM API가 실수로 제거되었습니다. 애플릿에서 com.sun.java.browser.dom.DOMService를 사용하여 브라우저와 통신해야 하는 경우 사용자가 netscape.javascript.JSObject를 사용하도록 애플릿을 업데이트하거나 계속 JDK 8 Update 31을 사용해야 할 수 있습니다. 이 문제는 빌드 26에서 해결되었으며 새 8u40 설치 프로그램이 게시되었습니다. 이 문제가 발생한 경우 업데이트된 JDK 8u40 설치 프로그램을 다운로드하여 실행하십시오. 8074564를 참조하십시오.
  • 버그 수정: Mac 10.10: 스플래시 화면을 사용하는 응용 프로그램 실행에 포커스 문제가 있습니다. Webstart 또는 독립형 응용 프로그램을 통해 시작된 응용 프로그램(스플래시 화면 사용)은 키보드 포커스를 사용할 수 없습니다. 임시해결책: -Xnosplash 옵션을 사용하여 javaws를 실행하십시오. 이 문제는 빌드 27에서 해결되었으며 새 8u40 설치 프로그램이 게시되었습니다. 이 문제가 발생한 경우 업데이트된 JDK 8u40 설치 프로그램을 다운로드하여 실행하십시오. 8074668을 참조하십시오.
  • Java Packager 툴의 향상된 기능
    JDK 8u40 릴리스에는 Java Packager의 다음과 같은 향상된 기능이 포함됩니다.
  • 더 이상 사용되지 않는 API
    인증된 표준 무효화 방식과 확장 방식은 더 이상 사용되지 않으므로 이후 릴리스에서 제거될 수 있습니다. 런타임 변경 사항은 없습니다. '인증된 표준 무효화' 방식 또는 '확장' 방식을 사용하는 기존 응용 프로그램의 경우 이러한 방식을 사용하지 않도록 이전하는 것이 좋습니다. -XX:+CheckEndorsedAndExtDirs 명령행 옵션을 사용하면 기존에 이러한 방식을 사용하고 있는지 식별할 수 있습니다. 다음 조건 중 하나에 해당할 경우 실패합니다.
    • -Djava.endorsed.dirs 또는 -Djava.ext.dirs 시스템 속성이 기본 위치를 변경하도록 설정되어 있습니다.
    • ${java.home}/lib/endorsed 디렉토리가 존재합니다.
    • ${java.home}/lib/ext에 JDK에서 제공하는 것 이외의 JAR 파일이 있습니다.
    • 플랫폼별 시스템 전체 확장 디렉토리에 JAR 파일이 있습니다.
    -XX:+CheckEndorsedAndExtDirs 명령행 옵션은 JDK 8u40 및 이후 릴리스에서 지원됩니다.
  • JJS 툴 페이지 차이
    JJS 도움말 페이지의 일본어 버전과 영어 버전이 다릅니다. JJS 툴 페이지의 영어 버전에서는 지원되지 않는 일부 옵션이 제거되었습니다. 문서의 일본어 버전은 추후에 업데이트될 예정입니다. 8062100(비공개)을 참조하십시오. 기타 JJS 툴 페이지 변경 사항은 JDK 8의 툴 개선 사항을 참조하십시오.
  • G1HeapWastePercent 및 G1MixedGCLiveThresholdPercent의 기본값 변경
    전체 GC의 필요성을 줄이기 위해 G1HeapWastePercent의 기본값이 10에서 5로 변경되었습니다. 이와 동일한 이유로 G1MixedGCLiveThresholdPercent의 기본값이 65에서 85로 변경되었습니다.
  • 새로운 Java 클래스 액세스 필터링 인터페이스
    jdk.nashorn.api.scripting.ClassFilter 인터페이스를 사용하여 Nashorn 스크립트 엔진을 통해 실행된 스크립트에서 지정된 Java 클래스에 액세스하는 것을 제한할 수 있습니다. 자세한 내용은 Nashorn 사용 설명서에서 Restricting Script Access to Specified Java Classes를 참조하거나 8043717(비공개)을 참조하십시오.
  • 타사 JCE 제공자 관련 문제
    JDK-8023069(JDK 8u20)용 수정 사항에서는 일부 내부 인터페이스를 비롯하여 SunJSSE 및 SunJCE 제공자가 모두 업데이트되었습니다. 일부 타사 JCE 제공자(예: RSA JSAFE)의 경우 sun.* internal 인터페이스를 사용하고 있으므로 업데이트된 SunJSSE 제공자에서 작동하지 않습니다. 이러한 제공자가 업데이트된 SunJSSE 제공자에서 작동하도록 업데이트해야 합니다. 이 문제의 영향을 받게 될 경우 JCE 공급업체에 업데이트를 요청하십시오. 8058731을 참조하십시오.
  • Solaris Crypto Framework에서 암호화가 다시 사용으로 설정됨
    Solaris 10을 사용 중인 경우 Solaris Crypto Framework를 통해 MD5, SHA1 및 SHA2 관련 작업이 다시 사용으로 설정되도록 변경되었습니다. JDK 8u40에서 CloneNotSupportedException 또는 PKCS11 오류 CKR_SAVED_STATE_INVALID 메시지가 발생할 경우 아래의 패치 또는 최신 버전의 패치를 확인한 후 적용해야 합니다.
    • 150531-02(sparc)
    • 150636-01(x86)
  • NMT용 문제 해결 설명서 업데이트
    NMT(Native Memory Tracking)는 HotSpot JVM에 대한 내부 메모리 사용량을 추적하는 Java Hotspot VM 기능입니다. NMT를 사용하면 VM 내부 메모리 할당을 모니터하고 VM 메모리 누출을 진단할 수 있습니다. NMT 기능이 적용되도록 VM 개선 사항 페이지가 업데이트되었습니다. Java Virtual Machine Enhancements in Java SE 8을 참조하십시오. NMT 기능이 적용되도록 문제 해결 설명서가 업데이트되었습니다. Native Memory Tracking을 참조하십시오.
  • 여러 JRE Launcher 기능이 사용되지 않음
    실행 시 JRE 버전 선택 또는 여러 JRE Launcher 기능이 설명된 대로 JDK 8u40에서 더 이상 사용되지 않습니다. 이 기능을 사용하여 배치된 특정 Java 버전이 필요한 응용 프로그램의 경우 Java WebStart와 같은 대체 배치 솔루션으로 전환해야 합니다.
  • JavaFX 기능 향상
    JDK 8u40 릴리스부터 보조 기술을 지원하도록 JavaFX 콘트롤이 향상되었습니다. 지금 JavaFX 콘트롤에 액세스할 수 있습니다. 더불어, 개발자가 고유의 액세스 가능한 콘트롤을 저작할 수 있는 공용 API가 제공됩니다. Windows 및 Mac OS X 플랫폼에서 접근성을 지원하며 다음 내용을 포함합니다.
    • 스크린 리더에서 JavaFX 콘트롤 읽기 지원
    • 키보드를 사용하여 JavaFX 콘트롤을 순회할 수 있음
    • 사용자가 콘트롤을 선명히 볼 수 있는 특수 고대비 모드 지원
    8043344(비공개)를 참조하십시오.

    JDK 8u40 릴리스에는 스피너 콘트롤, 서식 있는 텍스트 지원, 표준 경보 대화상자 모음과 같은 새로운 JavaFX UI 콘트롤이 포함됩니다.
    • 스피너 콘트롤: 스피너란, 사용자가 정렬된 시퀀스에서 숫자나 객체 값을 선택할 수 있는 한 줄 텍스트 필드입니다. 자세한 내용은 javafx.scene.control.Spinner 클래스를 참조하십시오.
    • 서식 있는 텍스트: 새로운 TextFormatter 클래스가 TextInputControl의 하위 클래스(예: TextField, TextArea)에 대한 텍스트 서식 기능을 제공합니다. 자세한 내용은 javafx.scene.control.TextFormatter 클래스를 참조하십시오.
    • 대화상자: 대화상자 클래스를 사용하여 응용 프로그램에서 고유의 사용자 정의 대화상자를 생성할 수 있습니다. 더불어, 대화상자를 확장한 경보 클래스도 제공됩니다. 미리 빌드된 수많은 대화상자 유형을 지원하므로 응답 프롬프트 시 사용자에게 쉽게 표시할 수 있습니다. 자세한 내용은 javafx.scene.control.Dialog, javafx.scene.control.Alert, javafx.scene.control.TextInputDialog, javafx.scene.control.ChoiceDialog 클래스를 참조하십시오.
    8043350(비공개)을 참조하십시오.
상용 기능
  • AppCDS(Application Class Data Sharing)
    AppCDS(Application Class Data Sharing)는 CDS를 확장한 것으로, 이를 사용하면 표준 확장 디렉토리 및 응용 프로그램 클래스 경로에서 제공하는 클래스를 공유 아카이브에 배치할 수 있습니다. 이는 상용 기능이므로 더 이상 테스트 기능(java 툴 설명서에 지정된 기능과 반대 의미)으로 간주되지 않습니다. Java Launcher 툴 페이지에서 -XX:+UseAppCDS 옵션을 참조하십시오.
  • 협력적 메모리 관리
    JDK 8u40부터 "메모리 압력"이라는 개념이 JDK에 추가되었습니다. 메모리 압력은 시스템의 총 메모리 사용량(RAM)을 나타내는 속성입니다. 메모리 압력이 높을수록 시스템 메모리가 부족할 가능성이 높습니다. 메모리 압력 증가에 대한 대응으로 JDK에서는 메모리 사용량을 줄이기 위해 노력합니다. 이러한 노력은 주로 Java 힙 크기를 줄이는 방식으로 수행됩니다. 메모리 사용량을 줄이기 위한 조치를 JDK에서 수행할 경우 성능이 저하될 수 있습니다. 이는 의도적인 선택입니다. 압력 레벨은 응용 프로그램에서 0(압력 없음) - 10(메모리 부족)의 척도를 사용하여 JMX MXBean을 통해 제공합니다. 이 기능을 사용으로 설정하려면 jdk.management.cmm.SystemResourcePressureMXBean을 등록해야 합니다. 그러면 "MemoryPressure" 속성을 사용하여 메모리 압력이 설정됩니다.
    'none', 'low', 'medium', 'high' 인수 중 하나를 사용하는 새로운 명령행 플래그인 -XX:MemoryRestriction도 사용할 수 있습니다. 이 플래그는 JDK의 초기 압력을 설정하며 MXBean이 등록되지 않은 경우에도 작동합니다. 협력적 메모리 관리를 위해서는 G1 GC(-XX:+UseG1GC)가 필요합니다. 그러나 이 기능은 -XX:+ExplicitGCInvokesConcurrent와 호환되지 않습니다.
  • 새로운 상용 플래그
    상용 라이센스 보유자의 경우 이제 두 개의 새로운 VM 옵션을 사용할 수 있습니다.
    • -XX:+ResourceManagement
    • -XX:ResourceManagementSampleInterval=value(밀리초)
    자세한 내용은 Java Launcher 설명서를 참조하십시오.
  • MSI 설치 프로그램 설명서가 추가됨
    Microsoft Windows Installer(MSI) Enterprise JRE Installer Guide가 제공됩니다. MSI Enterprise JRE 설치 프로그램을 운용에 사용하려면 상용 라이센스가 필요합니다. 상용 기능 및 이 기능을 사용으로 설정하는 방법에 대해 알아보십시오.
Java 만료 날짜

8u40의 만료 날짜는 2015년 4월 14일입니다. Java는 보안 취약점 수정이 포함된 새 릴리스가 제공될 때마다 만료됩니다. Oracle 서버에 연결할 수 없는 시스템의 경우 보조 방식에 따라 2015년 5월 14일에 이 JRE(버전 8u40)가 만료됩니다. 조건(새 릴리스 사용 가능 또는 만료 날짜 도달)에 충족되면 Java에서는 사용자에게 새로운 버전으로 업데이트하도록 추가 경고 및 통지를 제공합니다.

버그 수정

이 릴리스에 포함된 버그 수정 목록은 JDK 8u40 버그 수정 페이지를 참조하십시오.

» 8u40 릴리스 노트


Java 8 Update 31(8u31)

릴리스 주요 기능
  • IANA 데이터 2014j
    JDK 8u31에는 IANA 시간대 데이터 버전 2014j가 포함됩니다. 자세한 내용은 JRE 소프트웨어의 시간대 데이터 버전을 참조하십시오.
  • SSLv3가 기본적으로 사용 안함으로 설정됨
    JDK 8u31 릴리스부터 SSLv3 프로토콜(Secure Socket Layer)이 비활성화되었으며 일반적으로 사용할 수 없습니다. \lib\security\java.security 파일의 jdk.tls.disabledAlgorithms 속성을 참조하십시오. SSLv3가 반드시 필요한 경우 java.security 파일의 jdk.tls.disabledAlgorithms 속성에서 'SSLv3'를 제거하거나 JSSE가 초기화되기 전에 이 보안 속성을 동적으로 설정하여 프로토콜을 다시 활성화할 수 있습니다.
  • Java 제어판 변경
    JDK 8u31 릴리스부터 SSLv3 프로토콜이 Java 제어판 고급 옵션에서 제거되었습니다. 사용자가 응용 프로그램에 대해 SSLv3를 사용해야 하는 경우 다음과 같이 수동으로 다시 사용으로 설정하십시오.
    • JRE 레벨에서 SSLv3 프로토콜을 사용으로 설정: 위의 섹션에 설명된 대로 수행합니다.
    • 배치 레벨에서 SSLv3 프로토콜을 사용으로 설정: deployment.properties 파일을 편집하고 다음을 추가합니다.

      deployment.security.SSLv3=true
Java 만료 날짜

8u31 만료 날짜는 2015년 4월 14일입니다. Java는 보안 취약점 수정이 포함된 새 릴리스가 제공될 때마다 만료됩니다. Oracle 서버에 연결할 수 없는 시스템의 경우 보조 방식에 따라 2015년 5월 14일에 이 JRE(버전 8u31)가 만료됩니다. 조건(새 릴리스 사용 가능 또는 만료 날짜 도달)에 충족되면 Java에서는 사용자에게 새로운 버전으로 업데이트하도록 추가 경고 및 통지를 제공합니다.

버그 수정

이 릴리스에는 보안 취약점의 수정이 포함됩니다. 자세한 내용은 Oracle Java SE 중요한 패치 업데이트 권고 사항을 참조하십시오.

이 릴리스에 포함된 버그 수정 목록은 JDK 8u31 버그 수정 페이지를 참조하십시오.

» 8u31 릴리스 노트


Java 8 Update 25(8u25)

릴리스 주요 기능
  • IANA 데이터 2014c
    JDK 8u25에는 IANA 시간대 데이터 버전 2014c가 포함됩니다. 자세한 내용은 JRE 소프트웨어의 시간대 데이터 버전을 참조하십시오.
  • 버그 수정: 사용으로 설정된 암호화 모음 목록에서 RC4의 환경설정 모드 감소
    이 수정에서는 SunJSSE 제공자의 사용으로 설정된 암호화 모음에 대한 기본 목록에서 RC4 기반 암호화 모음의 환경설정을 줄였습니다. 8043200(비공개)을 참조하십시오.
  • 버그 수정: Windows에서 일본어 IM을 사용하는 동안 JRE 8u20 충돌 발생
    Swing 콘트롤을 사용 중인 상태에서 일본어 또는 중국어 문자가 Windows 플랫폼에 입력되는 경우 VM 충돌이 발생합니다. 이 문제는 수정되었습니다. 8058858(비공개)을 참조하십시오.
Oracle JDK 및 JRE에서 SSL v3.0을 사용 안함으로 설정하는 것과 관련된 지침

Oracle은 사용자와 개발자가 SSLv3 프로토콜을 사용 안함으로 설정할 것을 권장합니다.
» Java 사용자가 SSL V3.0 'Poodle' 취약점으로 영향을 받지 않음을 확인하려면 어떻게 해야 합니까?

Java 만료 날짜

8u25 만료 날짜는 2015년 1월 20일입니다. Java는 보안 취약점 수정이 포함된 새 릴리스가 제공될 때마다 만료됩니다. Oracle 서버에 연결할 수 없는 시스템의 경우 보조 방식에 따라 2015년 2월 20일에 이 JRE(버전 8u25)가 만료됩니다. 조건(새 릴리스 사용 가능 또는 만료 날짜 도달)에 충족되면 Java에서는 사용자에게 새로운 버전으로 업데이트하도록 추가 경고 및 통지를 제공합니다.

버그 수정

이 릴리스에는 보안 취약점의 수정이 포함됩니다. 자세한 내용은 Oracle Java SE 중요한 패치 업데이트 권고 사항을 참조하십시오.

이 릴리스에 포함된 버그 수정 목록은 JDK 8u25 버그 수정 페이지를 참조하십시오.

» 8u25 릴리스 노트


Java 8 Update 20(8u20)

릴리스 주요 기능
  • Java 관리 API에 새 플래그가 추가됨
    플래그 MinHeapFreeRatioMaxHeapFreeRatio를 관리할 수 있게 되었습니다. 즉, Java의 관리 API를 사용하여 런타임에 플래그를 변경할 수 있습니다. 적응 크기 정책의 일부로 ParallelGC에도 이러한 플래그에 대한 지원이 추가되었습니다.
  • Java Installer 변경 사항
    • 사용자가 엔터프라이즈에서 JRE를 설치할 수 있도록 해주는 새 MSI(Microsoft Windows Installer) Enterprise JRE Installer를 사용할 수 있습니다. 자세한 내용은 Microsoft Windows용 JRE 설치Installer 다운로드 섹션을 참조하십시오. MSI Enterprise JRE Installer는 Java SE Advanced 또는 Java SE Suite의 일부로만 제공됩니다. 이와 같은 상용 제품에 대한 자세한 내용은 Java SE Advanced 및 Java SE Suite를 참조하십시오.
    • Java 설치 제거 툴이 설치 프로그램에 통합되어 이전 버전의 Java를 시스템에서 제거할 수 있는 옵션을 제공합니다. 이 변경 사항은 32비트 및 64비트 Windows 플랫폼에 적용됩니다. JRE 설치 제거를 참조하십시오.
  • Java 제어판 변경 사항
    • 이제 Java 제어판의 Update 탭에서 사용자는 해당 시스템에 설치된 64비트 JRE(32비트 버전도 포함)를 자동으로 업데이트할 수 있습니다.
    • Medium 보안 레벨이 제거되었습니다. HighVery High 레벨만 사용할 수 있게 되었습니다. 최신 보안 방법을 따르지 않는 애플릿의 경우 해당 애플릿을 호스트하는 사이트를 예외 사이트 목록에 포함시키는 방식으로 실행 권한을 부여할 수 있습니다. 예외 사이트 목록을 사용하면 Medium 옵션을 선택한 경우에 허용되는 것과 동일한 애플릿을 허용할 수 있지만, 사이트별로 적용되므로 보다 허용적인 설정을 사용하는 데서 발생하는 위험을 최소화할 수 있습니다.
  • Java 컴파일러가 업데이트됨
    "Java 컴파일러"를 사용하는 비어 있는 최종 필드 액세스에 대해 명확한 지정 분석을 구현하도록 javac 컴파일러가 업데이트되었습니다. 자세한 내용은 JDK 8 Compatibility Guide를 참조하십시오.
  • Java 플러그인 및 Java Webstart에 필요한 최소 Java 버전 변경
    Java 플러그인 및 Java Webstart에 필요한 최소 Java 버전이 Java 5로 바뀌었습니다. Java 5 또는 이후 버전에서 실행되지 않는 애플릿이 계속 작동하려면 Java 5 또는 이후 버전을 포팅해야 합니다. 이전 버전용으로 작성되었지만 Java 5 이상에서 실행할 수 있는 애플릿은 계속 작동합니다.
  • UsageTracker 출력 형식 변경
    로그에서 혼동을 피하기 위해 UsageTracker 출력 형식이 따옴표를 사용하도록 변경되었습니다. 이로 인해 해당 정보를 읽는 방식도 변경해야 할 수 있습니다. 새 형식이 권장되기는 하지만 이전 버전에서처럼 작동하도록 기능을 구성할 수 있습니다. Java Usage Tracker 설명서를 참조하십시오.
  • Java 패키징 툴 변경 사항
    • javafxpackager가 javapackager로 이름이 바뀌었습니다.
    • 자체 포함 응용 프로그램 생성에 사용되는 번들러로 인수를 전달할 수 있도록 "-B" 옵션이 javapackager deploy 명령에 추가되었습니다. 자세한 내용은 javapackager(Windows)/(Unix) 설명서를 참조하십시오.
    • helper 매개변수 인수가 JavaFX Ant 작업 참조에 추가되었습니다. 따라서 자체 포함 응용 프로그램 생성에 사용되는 번들러의 인수를 요소에서 지정할 수 있습니다.
Java 만료 날짜

8u20의 만료 날짜는 2014년 10월 14일입니다. Java는 보안 취약점 수정이 포함된 새 릴리스가 제공될 때마다 만료됩니다. Oracle 서버에 연결할 수 없는 시스템의 경우 보조 방식에 따라 2014년 11월 14일에 이 JRE(버전 8u20)가 만료됩니다. 조건(새 릴리스 사용 가능 또는 만료 날짜 도달)에 충족되면 Java에서는 사용자에게 새로운 버전으로 업데이트하도록 추가 경고 및 통지를 제공합니다.

버그 수정

이 릴리스에 포함된 버그 수정 목록은 JDK 8u20 버그 수정 페이지를 참조하십시오.

» 8u20 릴리스 노트


Java 8 Update 11(8u11)

이 릴리스에는 보안 취약점의 수정이 포함됩니다. 자세한 내용은 Oracle 중요한 패치 업데이트 권고 사항을 참조하십시오.

이 릴리스에 포함된 버그 수정 목록은 JDK 8u11 버그 수정 페이지를 참조하십시오.

» 8u11 릴리스 노트


Java 8 Update 5(8u5)

이 릴리스에는 보안 취약점의 수정이 포함됩니다. 자세한 내용은 Oracle 중요한 패치 업데이트 권고 사항을 참조하십시오.

이 릴리스에 포함된 버그 수정 목록은 JDK 8u5 버그 수정 페이지를 참조하십시오.

» 8u5 릴리스 노트


Java 8 릴리스

» JDK 및 JRE 8 릴리스 노트


다음 사항도 살펴보십시오.:



언어 선택 | Java 정보 | 지원 | 개발자
개인 정보 보호 정책 | 사용 약관 | 등록 상표 | 보증의 부인

Oracle